Disclaimer

These scripts come without warranty of any kind. Use them at your own risk. I assume no liability for the accuracy, correctness, completeness, or usefulness of any information provided by this site nor for any sort of damages using these scripts may cause.
Showing posts with label ORA-00334. Show all posts
Showing posts with label ORA-00334. Show all posts

Monday, April 23, 2012

How to resolve MRP stuck issues on a physical standby database

How to resolve MRP stuck issues on a physical standby database

On my standby database, one day suddenly redo apply stopped and log files are showing the following error messages. On investigating, found that MRP process not running and doesn't apply more logs
ORA-16766: Redo Apply unexpectedly offline
ORA-00332: archived log is too small - may be incompletely archived
ORA-00334: archived log: <Archive log file name>
MRP stuck issues on a physical standby database
MRP0: Background Media Recovery terminated with error 332
Environment:
10g R2 Single  Instance Database with Dataguard Broker on Linux

I have performed the following activities and was able to restart the redo log apply
Solution:
1.       Verify the size & checksum of the reported archive log between primary and standby database. If they are different, then copy the archive log from primary to standby.  Can use md5sum to verify the checksum.

If the archive log not available you can restore from rman backup as follows
connect target /  catalog=username/pwd@catdb
run {
restore archivelog from logseq=340 until logseq=340 thread=1;
}


2.       Once the file is copied, restart the redo apply service.

Stop the managed recovery and start the manual recovery.

DGMGRL> EDIT DATABASE '<standby db_unique_name>' SET STATE='LOG-APPLY-OFF';
DGMGRL> EDIT DATABASE '<standby db_unique_name>' SET STATE='ONLINE';
3.       Verify the redolog apply started
ps –ef | grep mrp