In this Document
APPLIES TO: Oracle Database Cloud Exadata Service - Version N/A and later Oracle Database Cloud Service - Version N/A and later Oracle Database - Enterprise Edition - Version 12.1.0.1 to 12.1.0.1 [Release 12.1] Oracle Database Cloud Schema Service - Version N/A and later Gen 1 Exadata Cloud at Customer (Oracle Exadata Database Cloud Machine) - Version N/A and later Information in this document applies to any platform. SYMPTOMS This document explains how to overcome MRP Crash with ORA-39874 and ORA-39873 after a Point in time (PITR) recovery on Primary. -----Stnadby Alert log-----------
Recovery of pluggable database <PDB NAME> aborted due to pluggable database open resetlog marker. To continue recovery, restore all data files for this PDB to checkpoint SCN lower than 3961537, or timestamp before 10/10/2013 04:55:31, and restart recovery MRP0: Background Media Recovery terminated with error 39874 . Errors in file /u01/app/oracle/diag/rdbms/<standby db name>/<SID>/trace/<SID>_mrp0_15640.trc: ORA-39874: Pluggable Database <PDB NAME> recovery halted ORA-39873: Restore all data files to a checkpoint SCN lower than 3961537. Standby is ahead of primary RESETLOGS changes on <PDB NAME> . <PDB NAME> have two datafiles i.e datafile 12 and 13. SOLUTION 1. Make sure the corresponding standby PDB is closed. SQL>alter pluggable database <PDB NAME> close; 2. The error is expected if the DG broker is enabled. If DG broker is enabled then Stop the Apply via DG broker to avoid dg broker automatic restart of MRP. DGMGRL>edit database chicago set state=apply-off; 3. If Standby in ADG then mount it. SQL>select database_role,open_mode from v$database;
SQL>shutdown immediate; SQL>startup mount We have two options to recover Standby PDB.
OPTION I (Restore PDB)
1. If Standby is the backup server the go for direct restore because standby have the old backups.
On Standby, RMAN> list backup of pluggable database <PDB NAME>; NOTE : The backup SCN should be less or equal to PITR SCN. If no backup exist of lessr SCN then copy backuppiece which have less or equal SCN from primary
2. Get the PDB name SCN from the standby alert log error message (ORA-39874 and ORA-39873). RMAN>restore pluggable database <PDB DB> until scn <primary PITR SCN>;
Ex,
RMAN>restore pluggable database <PDB NAME> until scn 3961537; ------Standby Alert log---------------
Restore ..until SCN 2. Falshback to SCN Full restore complete of datafile 12 <PATH>/pdbseed/system01.dbf. Elapsed time: 0:00:14 checkpoint is 3961537 last deallocation scn is 3961537 Undo Optimization current scn is 3951674 Thu Oct 10 05:55:45 2013 Full restore complete of datafile 13 <PATH>/pdbseed/sysaux01.dbf. Elapsed time: 0:00:25 checkpoint is 3961537 last deallocation scn is 1362129 NOTE :After Restore do not start MRP immediately. If MRP started by mistakenly before the standby SYNCup with primary then MRP will crash with ORA-65138. The same applies to primary flashback to <SCN> Managed Standby Recovery starting Real Time Apply MRP0: Background Media Recovery terminated with error 65138 . Errors in file /u01/app/oracle/diag/rdbms/<standby db name>/<SID>/trace/<SID>_mrp0_18820.trc: ORA-65138: Data file 12 of pluggable database <PDB NAME> belongs to an orphan PDB incarnation. ORA-01110: data file 12: '<PATH>/pdbseed/system01.dbf' Managed Standby Recovery not using Real Time Apply To Resolve,
a. Take fresh backup of PDB from primary RMAN> backup pluggable database <PDB NAME>; b. Copy the backuppiece to Standby. c. On Standby restore PDB. RMAN> restore pluggable database <PDB NAME>;
3. Finally Open database,PDB and start MRP. RMAN>alter database open; RMAN>alter pluggable database <PDB NAME> open; RMAN>alter database recover managed standby database disconnect; NOTE : If DG broker enable,start MRP using, DGMGRL>edit database chicago ser state=apply-on; OPTION II
1. If Flashback is enabled then do flashback to scn 1362129. SQL>flashback database to scn <primary PITR SCN>;
Ex,
SQL>flashback database to scn 3961537; 2. Open database,PDB and start MRP.
RMAN>alter database open; RMAN>alter pluggable database <PDB NAME> open; RMAN>alter database recover managed standby database disconnect; RMAN> restore pluggable database <PDB NAME>; NOTE : If DG broker enable,start MRP using, DGMGRL>edit database chicago set state=apply-on; |