Sauvegarde oracle
| Fiche express | |
|---|---|
| Type | Panorama des stratégies de sauvegarde Oracle |
| Modes | Cohérente (à froid) · incohérente (à chaud, nécessite ARCHIVELOG) |
| Outil recommandé | Rman |
| Voir aussi | Rman · Redo log · Instance |
Panorama des concepts de sauvegarde d'une base Oracle. Pour l'outil de sauvegarde/ restauration lui-même, voir Rman (RMAN) — cette page couvre les notions générales et la configuration de l'archivage des journaux, prérequis à toute stratégie de sauvegarde à chaud.
Fichiers à protéger en priorité
- le fichier de contrôle (control file) ;
- les fichiers de journalisation (redo logs) — voir Redo log.
Une stratégie de sauvegarde doit être adaptée aux contraintes de l'entreprise (RPO/RTO, fenêtres de maintenance disponibles), testée régulièrement (une sauvegarde jamais restaurée n'est pas fiable) et documentée.
Sauvegarde cohérente vs incohérente
- Sauvegarde cohérente : sauvegarde à froid (base arrêtée) et/ou complète — tous les
fichiers reflètent le même instant, aucune récupération n'est nécessaire à la restauration.
- Sauvegarde incohérente : sauvegarde à chaud (base ouverte) et/ou partielle — les
fichiers ne sont pas synchronisés entre eux, la restauration nécessite de rejouer les journaux d'archive. Cela n'est possible que si le mode ARCHIVELOG est activé.
Le mode NOARCHIVELOG n'est envisageable que si l'on accepte de perdre les données depuis la dernière sauvegarde à froid complète (pas de sauvegarde à chaud possible dans ce mode).
Activer l'archivage des journaux (mode ARCHIVELOG)
ALTER SYSTEM SET log_archive_format='redo_%S_%R_%T.arc' SCOPE=SPFILE; ALTER SYSTEM SET log_archive_dest_1='LOCATION=/oradata/arch/nom_base' SCOPE=SPFILE; SHUTDOWN IMMEDIATE; STARTUP MOUNT; ALTER DATABASE ARCHIVELOG; ALTER DATABASE OPEN;
Signification des variables du format de nommage :
%s: numéro de séquence du redo log ;%t: numéro d'instance (thread, pertinent en RAC) ;%r: identifiant de remise à zéro (incrémenté à chaque RESETLOGS).
Jusqu'à 10 destinations d'archivage (log_archive_dest_1 à
log_archive_dest_10) peuvent être configurées pour multiplexer les archives sur
plusieurs emplacements.
Le paramètre ARCHIVE_LAG_TARGET définit l'intervalle maximal (en secondes) entre
deux bascules forcées d'archive — utilisé notamment pour borner le décalage applicable côté
DataGuard.
Informations sur l'archivage
ARCHIVE LOG LIST;
V$DATABASE V$LOG V$ARCHIVED_LOG V$ARCHIVE_DEST
- Mode d'archivage courant :
SELECT log_mode FROM v$database;
- État d'archivage de chaque groupe :
SELECT group#, sequence#, status, archived FROM v$log;
- Archives déjà générées :
SELECT sequence#, name FROM v$archived_log;
- État des destinations d'archivage :
SELECT destination, status, error FROM v$archive_dest WHERE dest_name = 'LOG_ARCHIVE_DEST_1';