Académique Documents
Professionnel Documents
Culture Documents
CHAPITRE 7 :
SAUVEGARDE ET RECUPERATION
DE BASES DE DONNEES
• manuelle
• Automatique (par script)
Sauvegarde base ouverte (à chaud)
Principe: fermer la base de données et faire une copie de tous les fichiers
Etape 1 : sauvegarde de fichiers
1. accéder au serveur oracle en mode administrateur : Connect/as sysdba
2. Fermer la base : Shutdown immediate
3. Copier les trois type de fichiers (.ctl, .log et .dbf) dans un autre
emplacement.
Etpae 2 : récupération de la base et TEST
1. ouvrir la base : startup
2. supprimer des tables pour faire le test
3. afficher les tables : select * from tab;//vérification
4. Fermer la base : Shutdown immédiate
5. Supprimer les trois types de fichiers
6. Restaurer les fichiers copiés dans leur emplacement
7. Ouvrir la base : startup
8. afficher les tables : select * from tab;
Enseignant : Malek ZRIBI
SCRIPT AUTOMATIQUE DE SAUVEGARDE À FROID
4
SYNTAXE:
RECOVER [AUTOMATIC ]
DATABASE [UNTIL CANCEL/DATE TIME/CHANGE SCN]
/TABLESPACE NOM
/DATAFILE ‘NOM_FICHIER’ /NUMERO_FICHIER
Pour pouvoir récupérer une base, le mode d’archivage doit être activé au
préalable:
- ETAPE 1 : Activer le mode Archivelog
Pour activer le mode d’archivage dans ORACLE, il faut procéder aux étapes
suivantes:
- Etape 2 : TEST
Pour tester maintenant notre travail on crée un tablespace et une table :
create tablespace TB
datafile ‘D:\TB.dbf’
size 10m ;
Créer un utilisateur :
Sql>create user user1 identified by user1 default tablespace tb;
Sql>grant connect, resource to user1;
Sql>connect user1/user1
Puis créer une table :
Sql> create table matable(col1 number) ;
Sql> insert into matable values(5) ;
Sql> commit ;
Enseignant : Malek ZRIBI
EXEMPLE DE RÉCUPÉRATION DE LA BASE SUITE À LA
PERTE D’UN FICHIER DE DONNÉES
9
Pour faire une sauvegarde à chaud (sur une base ouverte, il est
indispensable d’activer le mode ARCHIVELOG).
Une fois que le mode ARCHIVELOG est activé, nous pouvons enfin commencer notre
sauvegarde sur Base ouverte !,
Ensuite, il faut copier manuellement tous les fichiers qui constituent notre base de
données (comme pour une sauvegarde à froid).
Une fois que nous avons fini de copier tous les fichiers, on arrête le point de
sauvegarde avec la commande ALTER DATABASE END BACKUP.
Enseignant : Malek ZRIBI
SAUVEGARDE (BASE OUVERTE) DE TABLESPACE
:
Ensuite, il faut copier manuellement les fichiers (*.DBF) qui composent le TABLESPACE que
nous voulons sauvegarder.
Une fois que nous avons fini de copier tout le TABLESPACE, on arrête le point de
sauvegarde avec la commande :
ALTER TABLESPACE NomDuTABLESPACE END BACKUP.
En cas de problème :
CONNECT / AS SYSDBA
Il faut créer un répertoire d’import export :
SQL>CREATE OR REPLACE DIRECTORY test AS ‘C:/export';
SQL>GRANT READ, WRITE ON DIRECTORY test TO scott;
Ensuite il faut donner à l’utilisateur les privilèges nécessaires:
SQL>Grant exp_full_database, imp_full_database to scott;
RMAN> Run
{
allocate channel t1 type disk;
restore database;
recover database;
sql "alter database open";
}