RMAN-06053: unable to perform media recovery because of missing log

Article: 100022346
Last Published: 2010-01-22
Ratings: 3 3
Product(s): NetBackup & Alta Data Protection

Problem

RMAN-06053: unable to perform media recovery because of missing log

Solution

ISSUE:
When restoring the Oracle database using the Backup, Archive and Restore (BAR) program from a backup older than most recent backup, following errors can be seen:

INF - RMAN-06053: unable to perform media recovery because of missing log
INF - RMAN-06025: no backup of log thread 1 seq 682 lowscn14956764 found to restore
INF - RMAN-06025: no backup of log thread 1 seq 681lowscn 14955824 found to restore

The dbf files are restored successfully, however while restoring the archive logs, the restore fails with above error.

CAUSE:
This happens due to the following reasons:

During the restore, NetBackup will restore the most recent current control file.
From the current control file, RMAN identifies the dbf files and log files to be restored.

In the example above, RMAN is trying to restore log sequence number 682 and 681 from the backup piece of the date selected in the BAR GUI (older than most recent backup)
RMAN tries to restore these log files because it is referring the most recent current control file.

SOLUTION:
To solve the issue, it is necessary to determine which logs were backed up on the date when the restore was performed.

For this, run the following command on RMAN prompt:

RMAN> listbackupset

BS Key  Size       Device Type Elapsed TimeCompletion Time
------- ---------- ----------- ---------------------------
542    270.75M    SBT_TAPE    00:01:21    30-SEP-09
       BP Key: 542   Status:AVAILABLE  Compressed: NO  Tag:TAG20090930T171249

       Handle:arch_uq5kqi9sh_s837_p1_t698951569   Media:

 List of ArchivedLogs in backup set 542
 Thrd Seq     Low SCN    LowTime  Next SCN   Next Time
 ---- ------- ---------- ------------------- ---------
 1    665     14706536  29-SEP-09 14730401   29-SEP-09
 1    666    14730401   29-SEP-09 14758167  30-SEP-09
 1    667     14758167   30-SEP-0914768162   30-SEP-09
 1    668    14768162   30-SEP-09 14775031  30-SEP-09
 1    669     14775031   30-SEP-0914780700   30-SEP-09
 1    670    14780700   30-SEP-09 14784995  30-SEP-09
 1    671     14784995   30-SEP-0914785010   30-SEP-09

Find out the log sequence numbers backed up on the date from which the restore is being performed.

In the example above, this is the log sequence from 665 to 671, however, RMAN is trying to restore log sequence 682, 681 which was not backed up on 30th Sept 2009.

Next, run the following block on the RMAN prompt:

run{
ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE';
restore archivelog from logseq 665 until logseq 671;
release channel ch00;
}


Try to bring the database up and it should be up-to-date and consistent.

This is one of the reasons why Oracle restores should be done using the script and BAR GUI should be avoided.
 
 

 

Was this content helpful?