Standby database manuelle par RMAN (hot) sur Standard Edition : Différence entre versions
De wikiGite
Ligne 23 : | Ligne 23 : | ||
En cas d'erreur : | En cas d'erreur : | ||
RMAN> connect auxiliary sys/password@standbydb | RMAN> connect auxiliary sys/password@standbydb | ||
− | + | RMAN-00571: =========================================================== | |
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== | RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== | ||
RMAN-00571: =========================================================== | RMAN-00571: =========================================================== | ||
Ligne 42 : | Ligne 42 : | ||
)</span> | )</span> | ||
) | ) | ||
+ | |||
+ | L'erreur ; | ||
+ | starting media recovery | ||
+ | |||
+ | Oracle Error: | ||
+ | ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below | ||
+ | ORA-01152: '''file 1 was not restored from a sufficiently old backup''' | ||
+ | ORA-01110: data file 1: '/oradata/DBID/SYSTEM01.DBF' | ||
+ | |||
+ | RMAN-00571: =========================================================== | ||
+ | RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== | ||
+ | RMAN-00571: =========================================================== | ||
+ | RMAN-03002: failure of Duplicate Db command at 11/08/2010 21:07:42 | ||
+ | RMAN-03015: error occurred in stored script Memory Script | ||
+ | RMAN-06053: unable to perform media recovery because of missing log | ||
+ | RMAN-06025: no backup of log thread 1 seq 17200 lowscn 14557604 found to restore | ||
+ | |||
+ | RMAN-06025: no backup of log thread 1 seq 17199 lowscn 14557397 found to restore | ||
+ | peut n'être qu'un warning. Relancver la standby et tester le recover d'un archive log : | ||
+ | SQL> alter database mount standby database; | ||
+ | SQL> recover standby database | ||
+ | |||
+ | ORA-00279: change 57953 generated at .... | ||
+ | ORA-00289: suggestion : .... | ||
+ | ORA-00280: change 57953 .... | ||
+ | Specify log: {<RET>=suggested | filename | AUTO | CANCEL} | ||
+ | Si l'archive demandée est présente (en générer un à partir du serveur primaire au besoin) et qu'appuyer sur "Entrée" suffit à l'appliquer : tout va bien ! |
Version du 8 novembre 2010 à 20:18
Sur le serveur standby
Créer l'instance sur le serveur standby (on suppose la même arborescence et le même nom de base sur les 2 serveurs).
Une fois créée, la lancer :
$ sqlplus "/ as sysdba" SQL> startup nomount
Sur le serveur primaire
Lancer rman, faire un backup de la base avec le control file pour la standby :
backup database include current controlfile for standby ; sql "alter system archive log current"; backup archivelog all
Copier les fichiers de backup vers le serveur standby, dans le même répertoire.
Créer une entrée pour la base standby dans le tnsnames.ora du serveur primaire. Lancer RMAN et se connecter aux 2 bases (local=primaire, distante=standby) :
$ rman RMAN> connect auxiliary sys/password@standbydb RMAN> connect target /
Lancer la duplication :
duplicate target database for standby dorecover nofilenamecheck;
En cas d'erreur :
RMAN> connect auxiliary sys/password@standbydb RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-04006: error from auxiliary database: ORA-12528: TNS:listener: all appropriate instances are blocking new connections
Ajouter les lignes suivantes (en rouge) au listener.ora du serveur standby :
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = DBSID)
(ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
)
)
L'erreur ;
starting media recovery Oracle Error: ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below ORA-01152: file 1 was not restored from a sufficiently old backup ORA-01110: data file 1: '/oradata/DBID/SYSTEM01.DBF' RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of Duplicate Db command at 11/08/2010 21:07:42 RMAN-03015: error occurred in stored script Memory Script RMAN-06053: unable to perform media recovery because of missing log RMAN-06025: no backup of log thread 1 seq 17200 lowscn 14557604 found to restore RMAN-06025: no backup of log thread 1 seq 17199 lowscn 14557397 found to restore
peut n'être qu'un warning. Relancver la standby et tester le recover d'un archive log :
SQL> alter database mount standby database; SQL> recover standby database ORA-00279: change 57953 generated at .... ORA-00289: suggestion : .... ORA-00280: change 57953 .... Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
Si l'archive demandée est présente (en générer un à partir du serveur primaire au besoin) et qu'appuyer sur "Entrée" suffit à l'appliquer : tout va bien !