Sauvegardes de base de données dans Oracle - Exporter la base de données ou utiliser d'autres outils?


10

L'une des "pratiques" que j'ai vues concernant l'exécution par les administrateurs de base de données dans mon organisation consiste à traiter une exportation de base de données complète à l'aide d'outils tels que exp/ en expdptant que sauvegarde.

Serait-ce une bonne pratique? Quels seraient les avantages de l'utilisation de RMAN par rapport à cette approche?


La duplication de base de données est beaucoup plus facile avec RMAN
Sumnibot

Réponses:


7

L'avantage de RMAN est la récupération PITR au point dans le temps. Vous pouvez effectuer une sauvegarde RMAN des DBF et une sauvegarde RMAN des journaux de rétablissement archivés et récupérer votre base de données à tout moment jusqu'à la dernière sauvegarde du journal de rétablissement archivé. L'inconvénient de cette approche est qu'elle est très grossière - vous ne pouvez récupérer qu'au niveau de l'espace disque logique.

L'avantage de exp / expdp est que vous disposez d'une copie cohérente de la base de données que vous pouvez simplement importer dans une base de données vierge fraîchement créée. Cependant, vous ne pouvez pas la faire avancer - il s'agit à ce stade d'une base de données complètement séparée et indépendante sans relation logique avec son origine. Mais il est facile de récupérer une seule table, voire quelques lignes à partir d'une exportation.

Une bonne approche consisterait en des sauvegardes RMAN complètes et incrémentielles régulières des fichiers de données, des sauvegardes continues des journaux de rétablissement archivés (par exemple, dès qu'une sauvegarde archivelog est terminée, démarrez immédiatement la suivante afin que vous «diffusiez» les journaux sur bande), puis informez vos utilisateurs dans l'utilisation de exp / imp afin qu'ils puissent effectuer leurs propres "sauvegardes" (dans le cas de vouloir une copie réelle des données) et flashback (afin qu'ils puissent faire leurs propres récupérations dans le cas de DML qui tourne mal).

N'oubliez pas - une sauvegarde est destinée au DBA pour récupérer d'une panne catastrophique du matériel. Ce n'est pas à l'avantage des utilisateurs finaux (ou vous passerez tout votre temps à effectuer des restaurations sur un système de test et à recopier quelques lignes dans l'original!).


5

Exp / Expdp en tant que solution de sauvegarde, c'est comme dire que le magasin de pièces automobiles est votre automobile de sauvegarde. Techniquement, cela vous remettra en marche, mais cela ne vous causera que douleur et souffrance.

Exp ou Expdp peut être utilisé comme sauvegarde secondaire pour les sauvegardes à froid du système de fichiers ou les sauvegardes à chaud ou à froid rman (les autres logiciels client de sauvegarde Oracle exécutent généralement uniquement les commandes RMAN).

La méthodologie typique serait la suivante:

1 cold backup weekly
1 hot backup daily

Et si vous voulez vraiment être prudent, transportez périodiquement les journaux de rétablissement archivés hors du serveur (toutes les heures fonctionnent) ou définissez un emplacement distant pour une deuxième destination de journal d'archivage.

- RMAN * nouveau -

Ma session RMAN typique:

rman target=/

backup as compressed backupset database plus archivelog delete input;

delete obsolete;

exit

"Sauvegarde en tant que jeu de sauvegarde compressé ...": Vous pouvez également créer une image, qui est un octet pour une copie octet des fichiers de données. Ce serait bien comme cette sauvegarde hebdomadaire.

"... base de données ...": assez évident

"... plus archivelogs ...": nous donne une récupération ponctuelle (et un clonage ponctuel [commande dupliquée dans rman])

"... supprimer l'entrée": supprimez les archivelogs qui ont été sauvegardés. Vous pouvez également définir cela pour supprimer ceux qui ont été sauvegardés au moins deux fois, etc.

"supprimer obsolète": lorsque vous avez configuré votre politique de rétention rman (la mienne est de 5 jours), cela supprimera les sauvegardes qui se trouvent en dehors de cette fenêtre. Cela ne signifie pas que nous ne pouvons récupérer que 5 jours auparavant. Vous devriez toujours avoir vos sauvegardes sur bande / hors serveur quotidiennement de la zone de récupération flash. Cela signifie simplement qu'en ligne, vous aurez 5 jours de récupération et après cela, vous devrez restaurer les éléments de la zone de récupération flash à partir d'une sauvegarde sur bande / hors serveur, puis les enregistrer auprès de rman afin de les utiliser.

Voici un journal réel d'une session, légèrement modifié pour les chemins d'accès, etc.:

oracle@prodserver[PROD]$ rman target=/

Recovery Manager: Release 10.2.0.4.0 - Production on Wed Jan 5 21:00:00 2011

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

connected to target database: PROD (DBID=randomnumber)

RMAN> backup
2> as compressed backupset
3> database
4> include current controlfile
5> plus archivelog delete input;
6> backup spfile;
7> delete obsolete;
8>

Starting backup at 05-JAN-11
current log archived
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=291 devtype=DISK
channel ORA_DISK_1: starting compressed archive log backupset
channel ORA_DISK_1: specifying archive log(s) in backup set
input archive log thread=1 sequence=743 recid=743 stamp=739623589
input archive log thread=1 sequence=744 recid=744 stamp=739623940
input archive log thread=1 sequence=745 recid=745 stamp=739624712
input archive log thread=1 sequence=746 recid=746 stamp=739625380
input archive log thread=1 sequence=747 recid=747 stamp=739659606
channel ORA_DISK_1: starting piece 1 at 05-JAN-11
channel ORA_DISK_1: finished piece 1 at 05-JAN-11
piece handle=/u03/oraflash/PROD/backupset/2011_01_05/o1_mf_annnn_TAG20110105T210008_6lb8kb4o_.bkp tag=TAG20110105T210008 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:01:26
channel ORA_DISK_1: deleting archive log(s)
archive log filename=/u03/oraflash/PROD/archivelog/2011_01_05/o1_mf_1_743_6l95ckxx_.arc recid=743 stamp=739623589
archive log filename=/u03/oraflash/PROD/archivelog/2011_01_05/o1_mf_1_744_6l95plo2_.arc recid=744 stamp=739623940
archive log filename=/u03/oraflash/PROD/archivelog/2011_01_05/o1_mf_1_745_6l96gpok_.arc recid=745 stamp=739624712
archive log filename=/u03/oraflash/PROD/archivelog/2011_01_05/o1_mf_1_746_6l973l32_.arc recid=746 stamp=739625380
archive log filename=/u03/oraflash/PROD/archivelog/2011_01_05/o1_mf_1_747_6lb8k57v_.arc recid=747 stamp=739659606
Finished backup at 05-JAN-11

Starting backup at 05-JAN-11
using channel ORA_DISK_1
channel ORA_DISK_1: starting compressed full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00001 name=/u02/oradata/PROD/system01.dbf
input datafile fno=00005 name=/u02/oradata/PROD/software.dbf
input datafile fno=00003 name=/u02/oradata/PROD/sysaux01dbf
input datafile fno=00002 name=/u02/oradata/PROD/undotbs01.dbf
input datafile fno=00004 name=/u02/oradata/PROD/users.dbf
channel ORA_DISK_1: starting piece 1 at 05-JAN-11
channel ORA_DISK_1: finished piece 1 at 05-JAN-11
piece handle=/u03/oraflash/PROD/backupset/2011_01_05/o1_mf_nnndf_TAG20110105T210135_6lb8n0y4_.bkp tag=TAG20110105T210135 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:01:45
channel ORA_DISK_1: starting compressed full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
including current control file in backupset
including current SPFILE in backupset
channel ORA_DISK_1: starting piece 1 at 05-JAN-11
channel ORA_DISK_1: finished piece 1 at 05-JAN-11
piece handle=/u03/oraflash/PROD/backupset/2011_01_05/o1_mf_ncsnf_TAG20110105T210135_6lb8qblm_.bkp tag=TAG20110105T210135 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02
Finished backup at 05-JAN-11

Starting backup at 05-JAN-11
current log archived
using channel ORA_DISK_1
channel ORA_DISK_1: starting compressed archive log backupset
channel ORA_DISK_1: specifying archive log(s) in backup set
input archive log thread=1 sequence=748 recid=748 stamp=739659803
channel ORA_DISK_1: starting piece 1 at 05-JAN-11
channel ORA_DISK_1: finished piece 1 at 05-JAN-11
piece handle=/u03/oraflash/PROD/backupset/2011_01_05/o1_mf_annnn_TAG20110105T210323_6lb8qf3l_.bkp tag=TAG20110105T210323 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02
channel ORA_DISK_1: deleting archive log(s)
archive log filename=/u03/oraflash/PROD/archivelog/2011_01_05/o1_mf_1_748_6lb8qcrr_.arc recid=748 stamp=739659803
Finished backup at 05-JAN-11

Starting backup at 05-JAN-11
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
including current SPFILE in backupset
channel ORA_DISK_1: starting piece 1 at 05-JAN-11
channel ORA_DISK_1: finished piece 1 at 05-JAN-11
piece handle=/u03/oraflash/PROD/backupset/2011_01_05/o1_mf_nnsnf_TAG20110105T210329_6lb8qlnm_.bkp tag=TAG20110105T210329 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02
Finished backup at 05-JAN-11

RMAN retention policy will be applied to the command
RMAN retention policy is set to recovery window of 5 days
using channel ORA_DISK_1
Deleting the following obsolete backups and copies:
Type                 Key    Completion Time    Filename/Handle
-------------------- ------ ------------------ --------------------
Backup Set           55     30-DEC-10        
  Backup Piece       55     30-DEC-10          /u03/oraflash/PROD/backupset/2010_12_30/o1_mf_nnndf_TAG20101230T210026_6ktg9v8w_.bkp
Backup Set           56     30-DEC-10        
  Backup Piece       56     30-DEC-10          /u03/oraflash/PROD/backupset/2010_12_30/o1_mf_ncsnf_TAG20101230T210026_6ktgdvnt_.bkp
Backup Set           57     30-DEC-10        
  Backup Piece       57     30-DEC-10          /u03/oraflash/PROD/backupset/2010_12_30/o1_mf_annnn_TAG20101230T210204_6ktgdy5j_.bkp
Backup Set           58     30-DEC-10        
  Backup Piece       58     30-DEC-10          /u03/oraflash/PROD/backupset/2010_12_30/o1_mf_nnsnf_TAG20101230T210210_6ktgf3pz_.bkp
Backup Set           59     31-DEC-10        
  Backup Piece       59     31-DEC-10          /u03/oraflash/PROD/backupset/2010_12_31/o1_mf_annnn_TAG20101231T210008_6kx2ob5r_.bkp
deleted backup piece
backup piece handle=/u03/oraflash/PROD/backupset/2010_12_30/o1_mf_nnndf_TAG20101230T210026_6ktg9v8w_.bkp recid=55 stamp=739141227
deleted backup piece
backup piece handle=/u03/oraflash/PROD/backupset/2010_12_30/o1_mf_ncsnf_TAG20101230T210026_6ktgdvnt_.bkp recid=56 stamp=739141323
deleted backup piece
backup piece handle=/u03/oraflash/PROD/backupset/2010_12_30/o1_mf_annnn_TAG20101230T210204_6ktgdy5j_.bkp recid=57 stamp=739141326
deleted backup piece
backup piece handle=/u03/oraflash/PROD/backupset/2010_12_30/o1_mf_nnsnf_TAG20101230T210210_6ktgf3pz_.bkp recid=58 stamp=739141331
deleted backup piece
backup piece handle=/u03/oraflash/PROD/backupset/2010_12_31/o1_mf_annnn_TAG20101231T210008_6kx2ob5r_.bkp recid=59 stamp=739227610
Deleted 5 objects


Recovery Manager complete.

1
De nos jours, il n'est vraiment pas nécessaire de penser aux sauvegardes à froid. Et quel est l'intérêt d'une sauvegarde à chaud si vous ne sauvegardez pas également les journaux de rétablissement archivés!?
Gaius

Si des détails supplémentaires sont nécessaires, je serais heureux d'élaborer, sinon la plupart des articles sur rman traitent également de la sauvegarde des journaux de rétablissement archivés. C'est la différence entre: "base de données de sauvegarde" et "base de données de sauvegarde plus archivelogs", avec bien sûr toutes les variations supplémentaires entre les deux.
REW

Veuillez présenter votre réponse!
Sathyajith Bhat

Merci @REW pour la réponse détaillée, j'aimerais pouvoir vous
attribuer

4

Les avantages de RMAN sont les suivants:

  • Politique de rétention de sauvegarde automatique implémentée en utilisant la notion de fenêtres. Vous pouvez spécifier le nombre de jours pendant lesquels vos sauvegardes doivent être conservées et choisir une stratégie pour les conserver: elles sont supprimées dès leur expiration, ou elles sont supprimées s'il ne reste plus d'espace libre pour les nouvelles sauvegardes.
  • Utilisation de canaux pour améliorer les performances lors de l'écriture sur un support ou à l'aide de plusieurs contrôleurs de disque
  • Restauration facile - en gros, vous listez simplement les sauvegardes que vous avez et spécifiez à partir de laquelle vous souhaitez effectuer la restauration de la base de données
  • RMAN peut enregistrer ses métadonnées de sauvegarde dans une table indépendante appelée RMAN Repository, qui peut contenir un très grand nombre d'enregistrements de toutes les sauvegardes que vous avez effectuées, par opposition au fichier de contrôle
  • Vous pouvez spécifier le nombre par défaut de doublons de sauvegarde, de plus ce dernier peut être enregistré sur différents disques physiques (média)
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.