18 décembre 2008
4
18
/12
/décembre
/2008
21:03
Bonjour,
Lorsque l'on parle de base Oracle, on entend souvent parler de datafiles, d'archive log,...
Autant de fichiers qu'il faut bien sur sauvegarder au risque de se faire des frayeurs.
Il est en est un autre qui ne paye pas de mine, qui prend très peu de place mais qui est tout simplement VITAL : J'ai nommé le Control file !
Qu'est ce qu'un Control File ?
C'est un petit fichier binaire qui contient des informations contenant la structure de la base.
Le control file contient:
SELECT VALUE FROM v$PARAMETER WHERE NAME='control_files';
ou
SELECT NAME FROM V$CONTROLFILE;
Si jamais votre base ne dispose que d'un seul control file, je ne saurai trop vous recommander d'en ajouter au plus vite. Vous pouvez avoir au plus 8 control files, mais 3 semble être une valeur "correcte". Dans l'idéal, les différents control files doivent être placés sur des disques différents.
En théorie, a chaque modification de la structure de base (ajout de datafile, de redo, ou autre information étant dans le controlfile) il faudrait sauvegarder les controlfiles pour avoir une bonne version des fichiers. Ca peut être très vite fastidieux.
Si vous utilisez RMAN pour vos sauvegardes, alors pensez à y inclure les sauvegarde de control files.
RMAN > CONFIGURE CONTROLFILE AUTOBACKUP ON;
Par ailleurs, si vous desirez récuperer le script de création de controlfile vous pouvez effectuer la commande suivante en user SYSTEM
ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
Le fichier de trace sera généré dans /ORACLE_HOME/admin/ORA_SID/udump. Faut faire un peu le ménage (beaucoup de commentaires [à lire avant d'enlever])
LAO.
Lorsque l'on parle de base Oracle, on entend souvent parler de datafiles, d'archive log,...
Autant de fichiers qu'il faut bien sur sauvegarder au risque de se faire des frayeurs.
Il est en est un autre qui ne paye pas de mine, qui prend très peu de place mais qui est tout simplement VITAL : J'ai nommé le Control file !
Qu'est ce qu'un Control File ?
C'est un petit fichier binaire qui contient des informations contenant la structure de la base.
Le control file contient:
- Le nom de la base de donnée
- Les noms et emplacements des datafiles ainsi que des redo logs.
- La date de création de la base de données.
- Le numero de séquence du log actuel
- Informations concernant les "checkpoint"
Alors autant vous dire que ce fichier a beau être petit, sa perte aurait des conséquences dramatiques. En effet sans ce fichier la base ne pas être placée en mode montée "Mount" et toute restauration devient compliquée.
Oracle dans sa grande bonté permtet le multiplexage des control files. Vous auriez tort de vous en priver !
Encore faut-il savoir combien votre base utilse actuellement de control file et leur emplacement.
SELECT VALUE FROM v$PARAMETER WHERE NAME='control_files';
ou
SELECT NAME FROM V$CONTROLFILE;
Si jamais votre base ne dispose que d'un seul control file, je ne saurai trop vous recommander d'en ajouter au plus vite. Vous pouvez avoir au plus 8 control files, mais 3 semble être une valeur "correcte". Dans l'idéal, les différents control files doivent être placés sur des disques différents.
En théorie, a chaque modification de la structure de base (ajout de datafile, de redo, ou autre information étant dans le controlfile) il faudrait sauvegarder les controlfiles pour avoir une bonne version des fichiers. Ca peut être très vite fastidieux.
Si vous utilisez RMAN pour vos sauvegardes, alors pensez à y inclure les sauvegarde de control files.
RMAN > CONFIGURE CONTROLFILE AUTOBACKUP ON;
Par ailleurs, si vous desirez récuperer le script de création de controlfile vous pouvez effectuer la commande suivante en user SYSTEM
ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
Le fichier de trace sera généré dans /ORACLE_HOME/admin/ORA_SID/udump. Faut faire un peu le ménage (beaucoup de commentaires [à lire avant d'enlever])
LAO.