rman duplicate wants a standby control file

  • From: "Schauss, Peter (ESS)" <peter.schauss@xxxxxxx>
  • To: "oracle-l@xxxxxxxxxxxxx" <oracle-l@xxxxxxxxxxxxx>
  • Date: Thu, 3 Nov 2011 13:30:15 +0000

This is Oracle 11.2.0.1.0 running on Aix 5.3.

I am trying to duplicate a production database to create a test environment 
(and to test my backup strategy).  My backup script looks like this:


export ORACLE_SID=$1

rman  nocatalog <<EOF
connect target sys/syspassword
run {
        allocate channel ch1 type disk format 
'$BACKUP_DIR2/${BASE_NAME}_1_%U.rbk';
        allocate channel ch2 type disk format 
'$BACKUP_DIR2/${BASE_NAME}_2_%U.rbk';
        allocate channel ch3 type disk format 
'$BACKUP_DIR2/${BASE_NAME}_3_%U.rbk';
        allocate channel ch4 type disk format 
'$BACKUP_DIR2/${BASE_NAME}_4_%U.rbk';
        allocate channel ch5 type disk format 
'$BACKUP_DIR2/${BASE_NAME}_5_%U.rbk';
        allocate channel ch6 type disk format 
'$BACKUP_DIR2/${BASE_NAME}_6_%U.rbk';
        backup database plus archivelog;
        sql 'ALTER SYSTEM ARCHIVE LOG CURRENT';
}
exit

My duplicate script is:

export ORACLE_SID=pro2qa
rman nocatalog <<EOF
connect auxiliary sys/syspassword
run{
set newname for datafile 1 to '/u06/oradata/pro2qa/system01.dbf';
set newname for datafile 2 to '/u06/oradata/pro2qa/undotbs01.dbf';
set newname for datafile 3 to '/u06/oradata/pro2qa/sysaux01.dbf';
set newname for datafile 4 to '/u06/oradata/pro2qa/users01.dbf';
set newname for datafile 5 to '/u06/oradata/pro2qa/indxts1_x01.dbf';
set newname for datafile 6 to '/u06/oradata/pro2qa/datats1_d01.dbf';
set newname for tempfile 1 to '/u06/oradata/pro2qa/temp01.dbf';
set newname for datafile 7 to '/u06/oradata/pro2qa/datats2_db01.dbf';
set newname for datafile 8 to '/u06/oradata/pro2qa/indexts2_db01.dbf';
duplicate database to pro2qa
backup location '/orabkup2/pro2/rman'
logfile
        group 1('/u06/oradata/pro2qa/redo01.log') size 50m,
        group 2('/u06/oradata/pro2qa/redo02.log') size 50m,
        group 3('/u06/oradata/pro2qa/redo03.log') size 50m;
}
exit
EOF

When I run the duplicate script I get:


channel ORA_AUX_DISK_1: restoring control file
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 11/03/2011 09:05:44
RMAN-03015: error occurred in stored script Memory Script
ORA-19697: standby control file not found in backup set

Why is it asking for standby control file?

Looking at the output from my backup script I see that the control file is 
being backed up:
        including current control file in backup set channel ch5

I also backed up the control file separately using: 
        alter database backup controlfile to <file nam>;

FWIW, a search for ORA-19697 on MOS turns up nothing.

Also, when I ran this same script several months ago I was able to successfully 
duplicate the database.

What's going on here?

Thanks,
Peter Schauss

        



--
//www.freelists.org/webpage/oracle-l


Other related posts:

  • » rman duplicate wants a standby control file - Schauss, Peter (ESS)