IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

Fabien Celaia

Oracle : point de restauration

Noter ce billet
par , 23/06/2017 à 11h19 (3590 Affichages)
Introduction


Sauvegarder une base de donnée, rien de plus simple.
La restaurer, ce n'est techniquement pas compliqué, mais souvent horriblement long... et il faut savoir où on "met les pieds" .

Restaurer, cela nécessite

  • l'arrêt de la base
  • son redémarrage en mode nomount
  • la maîtrise de rman
  • l'écrasement (= la réécriture) de tous les fichiers de la base modifiés depuis la dernière sauvegarde
  • la restauration de tous les journaux d'archives créés entre le début de la dernière sauvegarde et l'heure de la reprise souhaitée
  • la relecture et l'exécution de toutes les transactions situées dans les journaux d'archive


Une solution plus simple consiste à utiliser le flashback database d'Oracle.

Oracle détruit alors ce qu'il a fait (fait machine arrière) plutôt que de restaurer sa base "from scratch"...

Installer Flashback DB

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
alter system set db_recovery_file_dest='+DGARCH' scope=spfile sid='*';
alter system set db_recovery_file_dest_size='80G' scope=spfile sid='*';
alter system set db_flashback_retention_target=5760 scope=spfile sid='*';
Activer Flashback database

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
SQL> alter database flashback on ;-- ne nécessite plus de reboot depuis 11g

Database altered.
Bien valider que le flashback soit bien activé sur la base
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 SQL> select flashback_on from v$database ;

FLASHBACK_ON
------------------
YES
Créer un point de restauration : cela aide au niveau de la récupération PITR (Point in time recovery)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
SQL> create restore point Before_MEP ;

Restore point created.
Valider l'existence du point de restauration
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 SELECT  name, scn, time, database_incarnation#, guarantee_flashback_database, storage_size FROM  v$restore_point;

NAME           SCN           TIME                           DATABASE_INCARNATION#  GUA  STORAGE_SIZE
-------------  ------------  -----------------------------  ---------------------  ---  ----------------
BEFORE_MEP     9496219       23.06.17 11:04:26.000000000    1                      NO   0
Restaurer une base

Arrêter la base, que ce soit en mode standalone ou Cluster, puis la remonter en mode exclusif et exécuter la restauration
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 sqlplus / as sysdba
SQL> startup mount exclusive ;
SQL> FLASHBACK DATABASE TO RESTORE POINT Before_MEP ;
SQL> alter database open resetlogs ;
Dans le cas où la restauration n'est plus nécessaire, supprimer le point d'arrêt
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
SQL> drop restore point Before_MEP ;
Restore point dropped.

Envoyer le billet « Oracle : point de restauration » dans le blog Viadeo Envoyer le billet « Oracle : point de restauration » dans le blog Twitter Envoyer le billet « Oracle : point de restauration » dans le blog Google Envoyer le billet « Oracle : point de restauration » dans le blog Facebook Envoyer le billet « Oracle : point de restauration » dans le blog Digg Envoyer le billet « Oracle : point de restauration » dans le blog Delicious Envoyer le billet « Oracle : point de restauration » dans le blog MySpace Envoyer le billet « Oracle : point de restauration » dans le blog Yahoo

Mis à jour 17/04/2018 à 17h06 par Fabien Celaia

Catégories
SGBD , Oracle

Commentaires

  1. Avatar de CinePhil
    • |
    • permalink
    Intéressant...
    Flashback DB est une option gratuite ou payante ?
  2. Avatar de Fabien Celaia
    • |
    • permalink
    Citation Envoyé par CinePhil
    Intéressant...
    Flashback DB est une option gratuite ou payante ?
    Flashback DB est comprise dans la licence EE (enterprise)
    Source : https://docs.oracle.com/cd/E11882_01...s.htm#DBLIC116