()

RMAN Duplicate fails to create block change tracking file in Oracle


While restoring of Oracle database on another database node than your source database, RMAN duplicate command may fail to create a block change tracking file with the following errors after restoring the database:

contents of Memory Script:
{
sql clone "alter system set db_name =
''DBSGURU'' comment=
''Reset to original value by RMAN'' scope=spfile";
sql clone "alter system reset db_unique_name scope=spfile";
shutdown clone immediate;
}


executing Memory Script

sql statement: alter system set db_name = ''DBSGURU'' comment= ''Reset to original value by RMAN'' scope=spfile;

sql statement: alter system reset db_unique_name scope=spfile;

Errors in memory script
RMAN-03015: error occurred in stored script Memory Script
RMAN-06136: ORACLE error from auxiliary database: ORA-01507: database not mounted
ORA-06512: at “SYS.X$DBMS_RCVMAN”, line 13694
ORA-06512: at line 1
RMAN-03015: error occurred in stored script Memory Script
RMAN-10032: unhandled exception during execution of job step 8:
ORA-00283: recovery session canceled due to errors
RMAN-11003: failure during parse/execution of SQL statement: alter database recover logfile ‘+RECO/DBSGURU/archivelog/2020_08_24/thread_2_seq_201940.4483.1049321375’
RMAN-11001: Oracle Error:
ORA-00283: recovery session canceled due to errors
ORA-19755: could not open change tracking file
ORA-19750: change tracking file: ‘+DATA/dbsguruprd/changetracking/ctf.367.1049123411’
ORA-17503: ksfdopn:2 Failed to open file +DATA/dbsguruprd/changetracking/ctf.367.1049123411
ORA-15012: ASM file ‘+DATA/dbsguruprd/changetracking/ctf.367.1049123411’ does not exist
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 08/24/2020 22:10:48
RMAN-05501: aborting duplication of target database

Recovery Manager complete.


Problem: Block change tracking was enabled on source databases and after restoring of databases, duplicate command tried to enable block change tracking with the same file but the same file is not present as the database server is on a different cluster. This is a bug # 18371441 reported for database version 11.2 and fixed is included in 12.2.

Solution :

  1. Apply the patch (18371441) for respective affected version by downloading from Oracle support.

  2. Tested Workaround:
    • Cleanup failed restored datafiles, controlfiles etc.
    • Start database in nomount stage
    • Retrigger duplicate command
    • Monitor restore process and disable block change tracking after controlfile restored and database mounted from SQL prompt.
SQL> alter database enable block change tracking;
Database altered.

Now restore will not try to enable block change tracking and restore will proceed as expected.

Thanks.

This document is only for learning purpose and always validate in the LAB environment first before applying in the LIVE environment.


Hope so you like this article
!
Please share your valuable feedback/comments/subscribe and follow us below and don’t forget to click on the bell icon to get the latest update. Click here to know more about our pursuit.

Recent articles

Loading

How useful was this post?

Click on a star to rate it!

Average rating / 5. Vote count:

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

DBsGuru

Hello and welcome to DBsGuru,DBsGuru is a group of experienced DBA professionals and serves databases and their related community by providing technical blogs, projects, training. Technical blogs are the source of vast information not about databases but its related product like middleware, PL/SQL, replication methodology, and so on.Thanks for the visits!Share Learn Grow!