RMAN restore would failed with RMAN-06026 and RMAN-06023 after successfully restoration of controlfile. Logs are as follows:
RMAN> restore database; Starting restore at 15-FEB-16 using channel ORA_DISK_1 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of restore command at 02/15/2016 14:52:59 RMAN-06026: some targets not found - aborting restore RMAN-06023: no backup or copy of datafile 4 found to restore RMAN-06023: no backup or copy of datafile 3 found to restore RMAN-06023: no backup or copy of datafile 2 found to restore RMAN-06023: no backup or copy of datafile 1 found to restore
As per oracle error RMAN-06023 means RMAN cannot find a backup for that datafile in its repository, so I cross verified RMAN backup files physically on disk as well as into RMAN repository with following RMAN commands. The backups are marked as AVAILABLE. Everything was pretty perfect.
RMAN> list backup of database summary;
RMAN> list backup of datafile 1; RMAN> list backup of datafile 2; RMAN> list backup of datafile 3; RMAN> list backup of datafile 4;
RMAN> list backup of archivelog sequence;
After drilled down everything, I came to know that there are some backup files in FRA that are belongs to OLD INCARNATION than available backup CURRENT INCARNATION.
The problem is here, while restoring RMAN backups, RMAN implicitly perform cross verification to FRA(If FRA defined in controlfile) and if new files encounter it will be catalog(registered) automatically. This prevents database from restoring backups that belong to old CURRENT incarnation. Resulting RMAN would not allowed to restored this case. Backup incarnation and the CURRENT incarnation in controlfile should be same.
There are 3 Solutions to this error:
First: You can move old RMAN backup files(that belongs to old incarnation) to outside FRA and begin your restoration again with restoration of controlfile.
Second: Disabled FRA for the temporary purpose while RMAN backup being restore.
SQL> shutdown immediate; SQL> create pfile from spfile; comment *.db_recovery_file_dest and *.db_recovery_file_dest_size in pfile. SQL> startup nomount pfile='.... init.ora'
Restart the restore controlfile and then restore/recover database commands…
Third: Resetting incarnation to the older incarnation, as below. In my case, following work around works like a charm.
RMAN> reset database to incarnation 3; database reset to incarnation 3
After resetting database incarnation, restore database successful.
Folks, Your valuable comments are highly appreciated.
Stay Tune. 🙂