About Me

My photo
Bangalore, India
I am an Oracle Certified Professional working in SAP Labs. Everything written on my blog has been tested on my local environment, Please test before implementing or running in production. You can contact me at amit.rath0708@gmail.com.

Wednesday, December 17, 2014

RMAN-06136: ORACLE error from auxiliary database: ORA-01503: CREATE CONTROLFILE failed

Yesterday I was doing a duplicate of a RAC database using RMAN Duplicate command and I got below error :-

sql statement: CREATE CONTROLFILE REUSE SET DATABASE "RASTAND" RESETLOGS ARCHIVELOG
  MAXLOGFILES    192
  MAXLOGMEMBERS      3
  MAXDATAFILES     1024
  MAXINSTANCES    32
  MAXLOGHISTORY     4672
 LOGFILE
  GROUP   1  SIZE 256 M ,
  GROUP   2  SIZE 256 M ,
  GROUP  10  SIZE 256 M
 DATAFILE
  '+DATA_0110/rastand/datafile/system.327.866524759'
 CHARACTER SET AL32UTF8

released channel: ch1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 12/17/2014 05:20:32
RMAN-05501: aborting duplication of target database
RMAN-06136: ORACLE error from auxiliary database: ORA-01503: CREATE CONTROLFILE failed
ORA-12720: operation requires database is in EXCLUSIVE mode

Problem :-

It seems while trying to create control file for a RAC database it failed by giving above error.

Reason :-

When we do a RMAN Dupliacate for a RAC Database , while creating control file for Auxiliary instance , it needs the database in Exclusive mode to create controlfile

Solution :-

In duplicate command mention Cluster_Database parameter to FALSE and it will resolve the issue. PFB :-

run
{
allocate auxiliary channel ch1 type disk;
duplicate target database to 'RASTAND'
backup location '/ora_backup/duplicate_test/RASTAND/backup/2014_12_16'
spfile
set cluster_database='FALSE'
set instance_number='1'
set db_file_name_convert='/ora_backup/TEST1/restore_test/AMIT/DATA','+DATA_0110';
}

We can also change the Cluster_database parameter in pfile also with which we start our auxiliary instance then command to do the Duplicate will be 

run
{
allocate auxiliary channel ch1 type disk;
duplicate target database to 'RASTAND'
backup location '/ora_backup/duplicate_test/RASTAND/backup/2014_12_16';
}

I hope this article helped you.

Regards,
Amit Rath

2 comments: