File rename on rman duplicate
Oracle 11.2.0.2 SE-One 64-bit
Oracle Linux 5.6 x86-64
Question I had never considered. When performing an rman duplicate database with no NEWNAME parameters in sight, how does rman know how to set new names? There is something more than just the init parm “db_create_file_dest”.
The setup:
Server SRVPRD,
- ASM instance
- database DBPRD , has files in diskgroups SAN and SMALL
Server SRVDEV
- ASM instance
- database DBSTG, has files in diskgroups LARGE and SMALL
- database DBDEV, has files in diskgroups DEV_LARGE and DEV_SMALL
Shell script on SRVDEV to replicate DBPRD to DBSTG. Script ftp’s the rman backups from SRVPRD, shuts down the instance DBSTG, deletes all of its files using asmcmd commands, then executes the following:
echo "connect catalog rman/********@rmcat" > /backup/dbstgvb/dbstgvb_refresh.rman
echo "connect target sys/********@srvprd" >> /backup/dbstgvb/dbstgvb_refresh.rman
echo "connect auxiliary /" >> /backup/dbstgvb/dbstgvb_refresh.rman
echo "run {" >> /backup/dbstgvb/dbstgvb_refresh.rman
echo "set until time \"to_date('`date +%Y-%m-%d` 12:38:00','YYYY-MM-DD hh24:mi:ss')\";" >> /backup/dbstgvb/dbstgvb_refresh.rman
echo "duplicate target database to DBSTGVB;" >> /backup/dbstgvb/dbstgvb_refresh.rman
echo "}" >> /backup/dbstgvb/dbstgvb_refresh.rman
$ORACLE_HOME/bin/rman < /backup/dbstgvb/dbstgvb_refresh.rman
It runs perfectly and the files that were in the +SAN diskgroup in prod are correctly placed in +LARGE, and the files that were in +SMALL are correctly placed in +SMALL.
Now a new requirement to start doing the same for DBDEV. Made a copy of the script and changed all references from DBSTG to DBDEV. Equivalent changes in the string of asmcmd commands that delete the files, specifying the correct specific disk groups.
With this one, instead of mapping files from the two disk groups in DBPRD to the two diskgroups in DBDEV, they all get put into the one disk group +DEV_SMALL.
On DBSTG, we see
SQL> show parameter db_create_file_dest
NAME TYPE VALUE
db_create_file_dest string +SMALL
and the rman log output of the replication includes this:
database mounted
contents of Memory Script:
set until scn 2984496;
set newname for datafile 1 to
"+SMALL/dbstgvb/system01.dbf";
set newname for datafile 2 to
"+SMALL/dbstgvb/sysaux01.dbf";
set newname for datafile 3 to
"+SMALL/dbstgvb/undotbs01.dbf";
set newname for datafile 4 to
"+SMALL/dbstgvb/users01.dbf";
set newname for datafile 5 to
"+LARGE/dbstgvb/perfstat_01.dbf";
set newname for datafile 6 to
"+LARGE/dbstgvb/dw_tbs1.dbf";
restore
clone database
executing Memory Script
On DBDEV we see
SQL> show parameter db_create_file_dest
NAME TYPE VALUE
db_create_file_dest string +DEV_SMALL
and the rman log output of the replication includes this:
database mounted
contents of Memory Script:
set until scn 2984496;
set newname for clone datafile 1 to new;
set newname for clone datafile 2 to new;
set newname for clone datafile 3 to new;
set newname for clone datafile 4 to new;
set newname for clone datafile 5 to new;
set newname for clone datafile 6 to new;
restore
clone database
executing Memory Script
So, I am missing exactly how it is that in the replicate to DBSTG, it is able to correctly identify that files coming from prod diskgroup SAN correctly mapped to diskgroup LARGE? And further, why that mechanism did not work to map to +DEV_LARGE when replicating to DBDEV. In DBDEV it seems to be controlled entirely by db_create_file_dest, but in DBSTG there seems to be something that I am missing that allows the greater complexity of mapping two diskgroups.
Interesting side observation
In making sure all files ended up in the correct location I started noticing differences in the FQFN from the source db to the target. Doing an asmcmd 'ls -l' on both systems, I discovered things like this:
On the source db, we have
DW_TBS1.dbf => +SAN/DBPRD/DATAFILE/DW_TBS.278.755044731
while on the target it came out
dw_tbs1.dbf => +LARGE/DBSTG/DATAFILE/DW.259.821974713
or
STAGE_CUST_ACCT_I1.ora => +SAN/DBPRD/DATAFILE/STAGE_CUST_ACCT_I.262.754925519
vs
stage_cust_acct_i1.ora => +LARGE/DBSTG/DATAFILE/STG_CUST_ACCT_IDX.266.822009311
Obviously not an operational problem, but a curiosity about the algorithm to generate the base part of the FQFN, and why it generated different names on different systems.
Similar Messages
-
Problems creating control file in RMAN duplicate database
There is so much detail involved in this operation that I don't know what might be useful, so I'll start simple. I'm attempting to clone a database on the same host using RMAN "duplicate database". I finally got all the setup done, the OS authentication hurdles hurdled, etc. and entered the command:
duplicate target database to COPYCH2M until time "to_date('March 15 2012 12:00:00', 'Mon DD YYYY HH24:MI:SS')";
The first time I got:
ORA-19504: failed to create file "/u01/app/oracle/oradata/COPYCH2M/control01.ctl"
ORA-27040: file create error, unable to create file
Linux-x86_64 Error: 2: No such file or directory
There was nothing in the Oracle instructions about manually creating the directory, but I did so, thinking that might be the problem. And it created the control files! But then I got the following:
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 05/21/2012 15:59:25
RMAN-03015: error occurred in stored script Memory Script
RMAN-06136: ORACLE error from auxiliary database: ORA-00201: control file version 11.2.0.0.0 incompatible with ORACLE version 11.1.0.1.0
ORA-00202: control file: '/u01/app/oracle/oradata/COPYCH2M/control01.ctl'
Sounds straightforward, if frustrating, right? Apparently you can't duplicate a database that's not in the exact same version. But:
1) The backuppiece we got the control file from was from last November.
2) The version of Oracle has not been updated since that time.
How can a file created by this version be incompatible with this version? Where is it even getting 11.1?
Thanks, I'm hoping this is easy but I can post more info if needed.>
There was nothing in the Oracle instructions about manually creating the directory, but I did so, thinking that might be the problem. And it created the control files! But then I got the following:
>
The database is limited as to what it can create. Since you defined where you wanted the controlfiles to go (pfile/spfile), it's up to you to make sure the directory is valid and exists. :)
>
How can a file created by this version be incompatible with this version? Where is it even getting 11.1?
>
As for your controlfiles, make sure the compatible parameter is set the same on both the source and the target unless you are using the default (11.1.0.1 for you, and you aren't)
Keep going, you'll get there. RMAN duplicate is a great feature.
Good luck. -
How can I rename files without creating a duplicate?
How can I rename files without creating a duplicate? And secondly, for some reason I can no longer save pdf files [i.e., bank statements] where I want - the Save As function is gone?
In many new cases, Save As is now called Duplicate in ML. It uses the same command-S keystroke. Older apps still have Save As. When you do a Duplicate operation, you will create an UNTITLED document. You have to save that duplicated document to complete the process.
So in 10.6.x, you would do ...
* Save As ...
* Give the file a new name + Chose the location for the file
* Click the Save button
Now in 10.8.x, you do ...
* Duplicate ...
* Save ...
* Give the file a name + Chose the location for the file
* Click the Save button
As baltwo mentioned, you have to search the Preferences of your browser to determine what is has set for the default Download folder.
JJW -
The RMAN Duplicate Command Fails During The Recover.
This exact script works fine in our lab. We are using Oracle 10.2.0.4.0.
The hot backup for standby is also a script which runs without error in both the lab and
the production machine.
I am obviously missing something.
Any help would be greatly appreciated.
Thanks,
Jeff
=================
RMAN BACKUP SCRIPT
=================
RMAN> run
2> {
3> allocate channel c1 device type disk format '/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_3261_BK4STDBY_%U';
4> backup current controlfile for standby format '/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_3261_CNTRL4STDBY_%U';
5> backup as compressed backupset check logical tag='1NETCMN1_3261_BK4STDBY' database include current controlfile for standby;
6> backup archivelog from sequence 463 format '/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_3261_LOGS4STDBY_%U';
7> release channel c1;
8> }
released channel: ORA_DISK_1
allocated channel: c1
channel c1: sid=578 devtype=DISK
Starting backup at 22-JAN-13
channel c1: starting full datafile backupset
channel c1: specifying datafile(s) in backupset
including standby control file in backupset
channel c1: starting piece 1 at 22-JAN-13
channel c1: finished piece 1 at 22-JAN-13
piece handle=/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_3261_CNTRL4STDBY_05o02f01_1_1 tag=TAG20130122T144104 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:02
Finished backup at 22-JAN-13
Starting backup at 22-JAN-13
channel c1: starting compressed full datafile backupset
channel c1: specifying datafile(s) in backupset
input datafile fno=00004 name=/u01/oradata/apoint/users01.dbf
input datafile fno=00001 name=/u01/oradata/apoint/system01.dbf
input datafile fno=00002 name=/u01/oradata/apoint/undotbs01.dbf
input datafile fno=00003 name=/u01/oradata/apoint/sysaux01.dbf
channel c1: starting piece 1 at 22-JAN-13
channel c1: finished piece 1 at 22-JAN-13
piece handle=/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_3261_BK4STDBY_06o02f05_1_1 tag=1NETCMN1_3261_BK4STDBY comment=NONE
channel c1: backup set complete, elapsed time: 00:22:35
channel c1: starting compressed full datafile backupset
channel c1: specifying datafile(s) in backupset
including standby control file in backupset
channel c1: starting piece 1 at 22-JAN-13
channel c1: finished piece 1 at 22-JAN-13
piece handle=/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_3261_BK4STDBY_07o02gah_1_1 tag=1NETCMN1_3261_BK4STDBY comment=NONE
channel c1: backup set complete, elapsed time: 00:00:07
Finished backup at 22-JAN-13
Starting backup at 22-JAN-13
current log archived
channel c1: starting archive log backupset
channel c1: specifying archive log(s) in backup set
input archive log thread=1 sequence=463 recid=5 stamp=805323439
input archive log thread=1 sequence=464 recid=6 stamp=805331764
input archive log thread=1 sequence=465 recid=7 stamp=805387242
input archive log thread=1 sequence=466 recid=8 stamp=805387245
input archive log thread=1 sequence=467 recid=9 stamp=805388633
channel c1: starting piece 1 at 22-JAN-13
channel c1: finished piece 1 at 22-JAN-13
piece handle=/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_3261_LOGS4STDBY_08o02gaq_1_1 tag=TAG20130122T150354 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:36
Finished backup at 22-JAN-13
released channel: c1
RMAN> exit
Recovery Manager complete.
=====================
RMAN DUPLICATE SCRIPT
=====================
RMAN> run
2> {
3> allocate auxiliary channel c1 device type disk;
4>
5> duplicate target database for standby dorecover nofilenamecheck;
6> release channel c1;
7> }
allocated channel: c1
channel c1: sid=299 devtype=DISK
Starting Duplicate Db at 21-JAN-13
contents of Memory Script:
set until scn 143395851;
restore clone standby controlfile;
sql clone 'alter database mount standby database';
executing Memory Script
executing command: SET until clause
Starting restore at 21-JAN-13
channel c1: starting datafile backupset restore
channel c1: restoring control file
channel c1: reading from backup piece /u03/oradata/apoint/DB_BACKUPS/1NETCMN1_6874_BK4STDBY_03o008gn_1_1
channel c1: restored backup piece 1
piece handle=/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_6874_BK4STDBY_03o008gn_1_1 tag=1NETCMN1_6874_BK4STDBY
channel c1: restore complete, elapsed time: 00:00:04
output filename=/u01/oradata/apoint/control01.ctl
output filename=/u02/oradata/apoint/control02.ctl
output filename=/u03/oradata/apoint/control03.ctl
Finished restore at 21-JAN-13
sql statement: alter database mount standby database
contents of Memory Script:
set until scn 143395851;
set newname for tempfile 1 to
"/u01/oradata/apoint/temp01.dbf";
switch clone tempfile all;
set newname for datafile 1 to
"/u01/oradata/apoint/system01.dbf";
set newname for datafile 2 to
"/u01/oradata/apoint/undotbs01.dbf";
set newname for datafile 3 to
"/u01/oradata/apoint/sysaux01.dbf";
set newname for datafile 4 to
"/u01/oradata/apoint/users01.dbf";
restore
check readonly
clone database
executing Memory Script
executing command: SET until clause
executing command: SET NEWNAME
renamed temporary file 1 to /u01/oradata/apoint/temp01.dbf in control file
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 21-JAN-13
channel c1: starting datafile backupset restore
channel c1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /u01/oradata/apoint/system01.dbf
restoring datafile 00002 to /u01/oradata/apoint/undotbs01.dbf
restoring datafile 00003 to /u01/oradata/apoint/sysaux01.dbf
restoring datafile 00004 to /u01/oradata/apoint/users01.dbf
channel c1: reading from backup piece /u03/oradata/apoint/DB_BACKUPS/1NETCMN1_6874_BK4STDBY_02o0076b_1_1
channel c1: restored backup piece 1
piece handle=/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_6874_BK4STDBY_02o0076b_1_1 tag=1NETCMN1_6874_BK4STDBY
channel c1: restore complete, elapsed time: 00:21:32
Finished restore at 21-JAN-13
contents of Memory Script:
switch clone datafile all;
executing Memory Script
datafile 1 switched to datafile copy
input datafile copy recid=5 stamp=805323205 filename=/u01/oradata/apoint/system01.dbf
datafile 2 switched to datafile copy
input datafile copy recid=6 stamp=805323205 filename=/u01/oradata/apoint/undotbs01.dbf
datafile 3 switched to datafile copy
input datafile copy recid=7 stamp=805323206 filename=/u01/oradata/apoint/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy recid=8 stamp=805323206 filename=/u01/oradata/apoint/users01.dbf
contents of Memory Script:
set until scn 143395851;
recover
standby
clone database
delete archivelog
executing Memory Script
executing command: SET until clause
Starting recover at 21-JAN-13
starting media recovery
channel c1: starting archive log restore to default destination
channel c1: restoring archive log
archive log thread=1 sequence=462
channel c1: reading from backup piece /u03/oradata/apoint/DB_BACKUPS/1NETCMN1_6874_LOGS4STDBY_04o008gu_1_1
channel c1: restored backup piece 1
piece handle=/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_6874_LOGS4STDBY_04o008gu_1_1 tag=TAG20130121T183822
channel c1: restore complete, elapsed time: 00:00:03
archive log filename=/u03/oradata/apoint/DB_ARCHIVE_LOGS/apoint_1_688761648_462.arch thread=1 sequence=462
Oracle Error:
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01152: file 1 was not restored from a sufficiently old backup
ORA-01110: data file 1: '/u01/oradata/apoint/system01.dbf'
released channel: c1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 01/21/2013 20:53:44
RMAN-03015: error occurred in stored script Memory Script
RMAN-11003: failure during parse/execution of SQL statement: alter database recover logfile '/u03/oradata/apoint/DB_ARCHIVE_LOGS/apoint_1_688761648_462.arch'
ORA-16145: archival for thread# 1 sequence# 462 in progress
RMAN> exitJeff;
I think the issue is in your backup. If you compare your command with mine, you may or may not see the issue, but this is how I got this to work.
Yours
RMAN run
allocate channel c1 device type disk format '/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_3261_BK4STDBY_%U';
backup current controlfile for standby format '/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_3261_CNTRL4STDBY_%U';
backup as compressed backupset check logical tag='1NETCMN1_3261_BK4STDBY' database include current controlfile for standby;
backup archivelog from sequence 463 format '/u03/oradata/apoint/DB_BACKUPS/1NETCMN1_3261_LOGS4STDBY_%U';
release channel c1;
Mine
RMAN RUN {
allocate channel d1 type disk;
backup format '/u01/backups/PRIMARY/df_t%t_s%s_p%p' database;
sql 'alter system archive log current';
backup format '/u01/backups/PRIMARY/al_t%t_s%s_p%p' archivelog all;
backup current controlfile for standby format '/u01/backups/PRIMARY/sb_t%t_s%s_p%p';
release channel d1;
}Your duplicate is very close to what I use :
Yours
RMAN> run
allocate auxiliary channel c1 device type disk;
duplicate target database for standby dorecover nofilenamecheck;
release channel c1;
Mine
RMAN> run {
allocate channel C1 device type disk;
allocate auxiliary channel C2 device type disk;
duplicate target database for standby nofilenamecheck;
}Short notes :
http://www.visi.com/~mseberg/duprman.html
Best Regards
mseberg -
Oracle 10.2.0.4 RMAN Duplicate without a Recovery Catalog
Production Backups are Tuesday - Sunday at 22:00:
RUN {
ALLOCATE CHANNEL c1 DEVICE TYPE DISK;
CROSSCHECK ARCHIVELOG ALL;
CROSSCHECK BACKUP;
DELETE NOPROMPT COPY OF ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-2';
DELETE NOPROMPT BACKUP;
BACKUP DATABASE PLUS ARCHIVELOG;
CROSSCHECK BACKUP;
RELEASE CHANNEL c1;
LIST BACKUPSET;
EOF
I have these files sent over to the development server on Wednesday, RMANbackup (log), backupset and the controlfile:
rcp -rp /backup/$1/flash_recovery/$2/RMANbackup/* kacdb4:/backup/common/flash_recovery/$2/RMANbackup
rcp -rp /backup/$1/flash_recovery/$2/backupset/* kacdb4:/backup/common/flash_recovery/$2/backupset
rcp -rp /backup/$1/flash_recovery/$2/controlfile/* kacdb4:/backup/common/flash_recovery/$2/controlfile
I run the RMAN Duplicate and the database gets created with no problems!
The question is: If I wait unit Thursday, to run the duplicate script, I get the traditional RMAN errors: RMAN-03002, RMAN-03015, RMAN-06026, RMAN-06023:
Starting restore at 20-SEP-12
released channel: aux1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 09/20/2012 10:05:36
RMAN-03015: error occurred in stored script Memory Script
RMAN-06026: some targets not found - aborting restore
RMAN-06023: no backup or copy of datafile 6 found to restore
RMAN-06023: no backup or copy of datafile 5 found to 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
Recovery Manager complete.
Is this because of the 'SYSDATE-2' in the RMAN runlist? Does RMAN connect back to the target and it does not find the logs, because they've been deleted, it aborts the duplicate? I've shipped over the backupset and controlfile of the scn I'm using in the duplicate runlist all is there? If I'm trying to cleanup the archive area, would'nt 'delete expired archivelog all' in my runlist, be better than using the 'SYSDATE-2'?
Or is it because of this database parameter:
control_file_record_keep_time= 7, should I set this to say 14?
Is it one of these RMAN configurations:
Retention Policy to Redundancy 1, should I set this to say 7?
Datafile Backup Copies for Device Type Disk to 1, to say 3, this takes up disk space which is precious
Archivelog Backup Copies for Device Type Disk to 1, to say 3, this takes up disk space too
Archive deletion policy to none change this to the other option?
I've tested this a few times now, and always fails if the dupicate is not done the next day.
If I have to create a development database on a Friday from Tuesday's copy FROM TAPE, I will get the error, because the files are no longer on disk.
What can I do to ensure that I can create an RMAN duplicate any day of the week from Tuesday to Sunday?
Look forward to your answer.
Please let me know if I left any details out that you may need.
Sincerely,
Elizabeth BurnsHi Valentin,
Here is the good duplicate log from Monday 9/24:
oracle:dupdb@kacdb4:/u01/app/oracle/KAC_SCRIPTS/dupdb/logs-> more clone_database_from_common_20120924.log
SQL*Plus: Release 10.2.0.4.0 - Production on Mon Sep 24 18:07:32 2012
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected.
SQL> spool /u01/app/oracle/KAC_SCRIPTS/dupdb/logs/DBShutdown.log
SQL> shutdown immediate
ORA-01507: database not mounted
ORACLE instance shut down.
SQL> spool off
SQL> exit;
Disconnected from Oracle Database 10g Release 10.2.0.4.0 - 64bit Production
SQL*Plus: Release 10.2.0.4.0 - Production on Mon Sep 24 18:07:41 2012
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected to an idle instance.
File created.
ORACLE instance started.
Total System Global Area 134217728 bytes
Fixed Size 2054448 bytes
Variable Size 79693520 bytes
Database Buffers 50331648 bytes
Redo Buffers 2138112 bytes
Disconnected from Oracle Database 10g Release 10.2.0.4.0 - 64bit Production
Recovery Manager: Release 10.2.0.4.0 - Production on Mon Sep 24 18:07:43 2012
Copyright (c) 1982, 2007, Oracle. All rights reserved.
connected to target database: KEDSP (DBID=3370721566)
connected to auxiliary database: DUPDB (not mounted)
RMAN> RUN
2> {
3> ALLOCATE AUXILIARY CHANNEL aux1 DEVICE TYPE DISK;
4>
5> set until scn 211054288;
6> DUPLICATE TARGET DATABASE TO dupdb
7> PFILE=/u01/app/oracle/product/10.2.0/db_1/dbs/initdupdb.ora
8> DB_FILE_NAME_CONVERT=('/usr/local/OLlinks/kedsp/system/','/usr/local/OLlinks/dupdb/system/','/usr/local/OLlinks/kedsp/temp/','/us
r/local/OLlinks/dupdb/temp/','/usr/local/OLlinks/kedsp/data01/','/usr/local/OLlinks/dupdb/data01/','/usr/local/OLlinks/kedsp/index01
/','/usr/
9> local/OLlinks/dupdb/index01/')
10> LOGFILE
11> GROUP 1 (
12> '/usr/local/OLlinks/dupdb/redo01/redo0101.log',
13> '/usr/local/OLlinks/dupdb/redo02/redo0102.log',
14> '/usr/local/OLlinks/dupdb/redo03/redo0103.log'
15> ) SIZE 50M,
16> GROUP 2 (
17> '/usr/local/OLlinks/dupdb/redo01/redo0201.log',
18> '/usr/local/OLlinks/dupdb/redo02/redo0202.log',
19> '/usr/local/OLlinks/dupdb/redo03/redo0203.log'
20> ) SIZE 50M,
21> GROUP 3 (
22> '/usr/local/OLlinks/dupdb/redo01/redo0301.log',
23> '/usr/local/OLlinks/dupdb/redo02/redo0302.log',
24> '/usr/local/OLlinks/dupdb/redo03/redo0303.log'
25> ) SIZE 50M,
26> GROUP 4 (
27> '/usr/local/OLlinks/dupdb/redo01/redo0401.log',
28> '/usr/local/OLlinks/dupdb/redo02/redo0402.log',
29> '/usr/local/OLlinks/dupdb/redo03/redo0403.log'
30> ) SIZE 50M,
31> GROUP 5 (
32> '/usr/local/OLlinks/dupdb/redo01/redo0501.log',
33> '/usr/local/OLlinks/dupdb/redo02/redo0502.log',
34> '/usr/local/OLlinks/dupdb/redo03/redo0503.log'
35> ) SIZE 50M,
36> GROUP 6 (
37> '/usr/local/OLlinks/dupdb/redo01/redo0601.log',
38> '/usr/local/OLlinks/dupdb/redo02/redo0602.log',
39> '/usr/local/OLlinks/dupdb/redo03/redo0603.log'
40> ) SIZE 50M,
41> GROUP 7 (
42> '/usr/local/OLlinks/dupdb/redo01/redo0701.log',
43> '/usr/local/OLlinks/dupdb/redo02/redo0702.log',
44> '/usr/local/OLlinks/dupdb/redo03/redo0703.log'
45> ) SIZE 50M,
46> GROUP 8 (
47> '/usr/local/OLlinks/dupdb/redo01/redo0801.log',
48> '/usr/local/OLlinks/dupdb/redo02/redo0802.log',
49> '/usr/local/OLlinks/dupdb/redo03/redo0803.log'
50> ) SIZE 50M,
51> GROUP 9 (
52> '/usr/local/OLlinks/dupdb/redo01/redo0901.log',
53> '/usr/local/OLlinks/dupdb/redo02/redo0902.log',
54> '/usr/local/OLlinks/dupdb/redo03/redo0903.log'
55> ) SIZE 50M,
56> GROUP 10 (
57> '/usr/local/OLlinks/dupdb/redo01/redo1001.log',
58> '/usr/local/OLlinks/dupdb/redo02/redo1002.log',
59> '/usr/local/OLlinks/dupdb/redo03/redo1003.log'
60> ) SIZE 50M
61> ;
62> }
63>
using target database control file instead of recovery catalog
allocated channel: aux1
channel aux1: sid=242 devtype=DISK
executing command: SET until clause
Starting Duplicate Db at 24-SEP-12
contents of Memory Script:
set until scn 211054288;
set newname for datafile 1 to
"/usr/local/OLlinks/dupdb/system/system01.dbf";
set newname for datafile 2 to
"/usr/local/OLlinks/dupdb/system/undotbs01.dbf";
set newname for datafile 3 to
"/usr/local/OLlinks/dupdb/system/sysaux01.dbf";
set newname for datafile 4 to
"/usr/local/OLlinks/dupdb/system/users01.dbf";
set newname for datafile 5 to
"/usr/local/OLlinks/dupdb/data01/data1.dbf";
set newname for datafile 6 to
"/usr/local/OLlinks/dupdb/index01/index1.dbf";
restore
check readonly
clone database
executing Memory Script
executing command: SET until clause
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 24-SEP-12
channel aux1: starting datafile backupset restore
channel aux1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /usr/local/OLlinks/dupdb/system/system01.dbf
restoring datafile 00002 to /usr/local/OLlinks/dupdb/system/undotbs01.dbf
restoring datafile 00003 to /usr/local/OLlinks/dupdb/system/sysaux01.dbf
restoring datafile 00004 to /usr/local/OLlinks/dupdb/system/users01.dbf
restoring datafile 00005 to /usr/local/OLlinks/dupdb/data01/data1.dbf
restoring datafile 00006 to /usr/local/OLlinks/dupdb/index01/index1.dbf
channel aux1: reading from backup piece /usr/local/OLlinks/kedsp/flash_recovery/KEDSP/backupset/2012_09_24/o1_mf_nnndf_TAG20120924T1
01837_860txxs8_.bkp
channel aux1: restored backup piece 1
piece handle=/usr/local/OLlinks/kedsp/flash_recovery/KEDSP/backupset/2012_09_24/o1_mf_nnndf_TAG20120924T101837_860txxs8_.bkp tag=TAG
20120924T101837
channel aux1: restore complete, elapsed time: 00:00:47
Finished restore at 24-SEP-12
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "DUPDB" RESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 584
LOGFILE
GROUP 1 ( '/usr/local/OLlinks/dupdb/redo01/redo0101.log', '/usr/local/OLlinks/dupdb/redo02/redo0102.log', '/usr/local/OLlinks/dup
db/redo03/redo0103.log' ) SIZE 50 M ,
GROUP 2 ( '/usr/local/OLlinks/dupdb/redo01/redo0201.log', '/usr/local/OLlinks/dupdb/redo02/redo0202.log', '/usr/local/OLlinks/dup
db/redo03/redo0203.log' ) SIZE 50 M ,
GROUP 3 ( '/usr/local/OLlinks/dupdb/redo01/redo0301.log', '/usr/local/OLlinks/dupdb/redo02/redo0302.log', '/usr/local/OLlinks/dup
db/redo03/redo0303.log' ) SIZE 50 M ,
GROUP 4 ( '/usr/local/OLlinks/dupdb/redo01/redo0401.log', '/usr/local/OLlinks/dupdb/redo02/redo0402.log', '/usr/local/OLlinks/dup
db/redo03/redo0403.log' ) SIZE 50 M ,
GROUP 5 ( '/usr/local/OLlinks/dupdb/redo01/redo0501.log', '/usr/local/OLlinks/dupdb/redo02/redo0502.log', '/usr/local/OLlinks/dup
db/redo03/redo0503.log' ) SIZE 50 M ,
GROUP 6 ( '/usr/local/OLlinks/dupdb/redo01/redo0601.log', '/usr/local/OLlinks/dupdb/redo02/redo0602.log', '/usr/local/OLlinks/dup
db/redo03/redo0603.log' ) SIZE 50 M ,
GROUP 7 ( '/usr/local/OLlinks/dupdb/redo01/redo0701.log', '/usr/local/OLlinks/dupdb/redo02/redo0702.log', '/usr/local/OLlinks/dup
db/redo03/redo0703.log' ) SIZE 50 M ,
GROUP 8 ( '/usr/local/OLlinks/dupdb/redo01/redo0801.log', '/usr/local/OLlinks/dupdb/redo02/redo0802.log', '/usr/local/OLlinks/dup
db/redo03/redo0803.log' ) SIZE 50 M ,
GROUP 9 ( '/usr/local/OLlinks/dupdb/redo01/redo0901.log', '/usr/local/OLlinks/dupdb/redo02/redo0902.log', '/usr/local/OLlinks/dup
db/redo03/redo0903.log' ) SIZE 50 M ,
GROUP 10 ( '/usr/local/OLlinks/dupdb/redo01/redo1001.log', '/usr/local/OLlinks/dupdb/redo02/redo1002.log', '/usr/local/OLlinks/dup
db/redo03/redo1003.log' ) SIZE 50 M
DATAFILE
'/usr/local/OLlinks/dupdb/system/system01.dbf'
CHARACTER SET WE8ISO8859P1
contents of Memory Script:
switch clone datafile all;
executing Memory Script
datafile 2 switched to datafile copy
input datafile copy recid=1 stamp=794858918 filename=/usr/local/OLlinks/dupdb/system/undotbs01.dbf
datafile 3 switched to datafile copy
input datafile copy recid=2 stamp=794858918 filename=/usr/local/OLlinks/dupdb/system/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy recid=3 stamp=794858918 filename=/usr/local/OLlinks/dupdb/system/users01.dbf
datafile 5 switched to datafile copy
input datafile copy recid=4 stamp=794858918 filename=/usr/local/OLlinks/dupdb/data01/data1.dbf
datafile 6 switched to datafile copy
input datafile copy recid=5 stamp=794858918 filename=/usr/local/OLlinks/dupdb/index01/index1.dbf
contents of Memory Script:
set until scn 211054288;
recover
clone database
delete archivelog
executing Memory Script
executing command: SET until clause
Starting recover at 24-SEP-12
starting media recovery
channel aux1: starting archive log restore to default destination
channel aux1: restoring archive log
archive log thread=1 sequence=1403
channel aux1: reading from backup piece /usr/local/OLlinks/kedsp/flash_recovery/KEDSP/backupset/2012_09_24/o1_mf_annnn_TAG20120924T1
01923_860tzfd7_.bkp
channel aux1: restored backup piece 1
piece handle=/usr/local/OLlinks/kedsp/flash_recovery/KEDSP/backupset/2012_09_24/o1_mf_annnn_TAG20120924T101923_860tzfd7_.bkp tag=TAG
20120924T101923
channel aux1: restore complete, elapsed time: 00:00:05
archive log filename=/usr/local/OLlinks/dupdb/flash_recovery/DUPDB/archivelog/2012_09_24/o1_mf_1_1403_861phcc3_.arc thread=1 sequenc
e=1403
channel clone_default: deleting archive log(s)
archive log filename=/usr/local/OLlinks/dupdb/flash_recovery/DUPDB/archivelog/2012_09_24/o1_mf_1_1403_861phcc3_.arc recid=1 stamp=79
4858923
media recovery complete, elapsed time: 00:00:02
Finished recover at 24-SEP-12
contents of Memory Script:
shutdown clone;
startup clone nomount pfile= '/u01/app/oracle/product/10.2.0/db_1/dbs/initdupdb.ora';
executing Memory Script
database dismounted
Oracle instance shut down
connected to auxiliary database (not started)
Oracle instance started
Total System Global Area 134217728 bytes
Fixed Size 2054448 bytes
Variable Size 79693520 bytes
Database Buffers 50331648 bytes
Redo Buffers 2138112 bytes
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "DUPDB" RESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 584
LOGFILE
GROUP 1 ( '/usr/local/OLlinks/dupdb/redo01/redo0101.log', '/usr/local/OLlinks/dupdb/redo02/redo0102.log', '/usr/local/OLlinks/dup
db/redo03/redo0103.log' ) SIZE 50 M ,
GROUP 2 ( '/usr/local/OLlinks/dupdb/redo01/redo0201.log', '/usr/local/OLlinks/dupdb/redo02/redo0202.log', '/usr/local/OLlinks/dup
db/redo03/redo0203.log' ) SIZE 50 M ,
GROUP 3 ( '/usr/local/OLlinks/dupdb/redo01/redo0301.log', '/usr/local/OLlinks/dupdb/redo02/redo0302.log', '/usr/local/OLlinks/dup
db/redo03/redo0303.log' ) SIZE 50 M ,
GROUP 4 ( '/usr/local/OLlinks/dupdb/redo01/redo0401.log', '/usr/local/OLlinks/dupdb/redo02/redo0402.log', '/usr/local/OLlinks/dup
db/redo03/redo0403.log' ) SIZE 50 M ,
GROUP 5 ( '/usr/local/OLlinks/dupdb/redo01/redo0501.log', '/usr/local/OLlinks/dupdb/redo02/redo0502.log', '/usr/local/OLlinks/dup
db/redo03/redo0503.log' ) SIZE 50 M ,
GROUP 6 ( '/usr/local/OLlinks/dupdb/redo01/redo0601.log', '/usr/local/OLlinks/dupdb/redo02/redo0602.log', '/usr/local/OLlinks/dup
db/redo03/redo0603.log' ) SIZE 50 M ,
GROUP 7 ( '/usr/local/OLlinks/dupdb/redo01/redo0701.log', '/usr/local/OLlinks/dupdb/redo02/redo0702.log', '/usr/local/OLlinks/dup
db/redo03/redo0703.log' ) SIZE 50 M ,
GROUP 8 ( '/usr/local/OLlinks/dupdb/redo01/redo0801.log', '/usr/local/OLlinks/dupdb/redo02/redo0802.log', '/usr/local/OLlinks/dup
db/redo03/redo0803.log' ) SIZE 50 M ,
GROUP 9 ( '/usr/local/OLlinks/dupdb/redo01/redo0901.log', '/usr/local/OLlinks/dupdb/redo02/redo0902.log', '/usr/local/OLlinks/dup
db/redo03/redo0903.log' ) SIZE 50 M ,
GROUP 10 ( '/usr/local/OLlinks/dupdb/redo01/redo1001.log', '/usr/local/OLlinks/dupdb/redo02/redo1002.log', '/usr/local/OLlinks/dup
db/redo03/redo1003.log' ) SIZE 50 M
DATAFILE
'/usr/local/OLlinks/dupdb/system/system01.dbf'
CHARACTER SET WE8ISO8859P1
contents of Memory Script:
set newname for tempfile 1 to
"/usr/local/OLlinks/dupdb/temp/temp01.dbf";
switch clone tempfile all;
catalog clone datafilecopy "/usr/local/OLlinks/dupdb/system/undotbs01.dbf";
catalog clone datafilecopy "/usr/local/OLlinks/dupdb/system/sysaux01.dbf";
catalog clone datafilecopy "/usr/local/OLlinks/dupdb/system/users01.dbf";
catalog clone datafilecopy "/usr/local/OLlinks/dupdb/data01/data1.dbf";
catalog clone datafilecopy "/usr/local/OLlinks/dupdb/index01/index1.dbf";
switch clone datafile all;
executing Memory Script
executing command: SET NEWNAME
renamed temporary file 1 to /usr/local/OLlinks/dupdb/temp/temp01.dbf in control file
cataloged datafile copy
datafile copy filename=/usr/local/OLlinks/dupdb/system/undotbs01.dbf recid=1 stamp=794858932
cataloged datafile copy
datafile copy filename=/usr/local/OLlinks/dupdb/system/sysaux01.dbf recid=2 stamp=794858932
cataloged datafile copy
datafile copy filename=/usr/local/OLlinks/dupdb/system/users01.dbf recid=3 stamp=794858932
cataloged datafile copy
datafile copy filename=/usr/local/OLlinks/dupdb/data01/data1.dbf recid=4 stamp=794858932
cataloged datafile copy
datafile copy filename=/usr/local/OLlinks/dupdb/index01/index1.dbf recid=5 stamp=794858932
datafile 2 switched to datafile copy
input datafile copy recid=1 stamp=794858932 filename=/usr/local/OLlinks/dupdb/system/undotbs01.dbf
datafile 3 switched to datafile copy
input datafile copy recid=2 stamp=794858932 filename=/usr/local/OLlinks/dupdb/system/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy recid=3 stamp=794858932 filename=/usr/local/OLlinks/dupdb/system/users01.dbf
datafile 5 switched to datafile copy
input datafile copy recid=4 stamp=794858932 filename=/usr/local/OLlinks/dupdb/data01/data1.dbf
datafile 6 switched to datafile copy
input datafile copy recid=5 stamp=794858932 filename=/usr/local/OLlinks/dupdb/index01/index1.dbf
contents of Memory Script:
Alter clone database open resetlogs;
executing Memory Script
database opened
Finished Duplicate Db at 24-SEP-12
Recovery Manager complete.
SQL*Plus: Release 10.2.0.4.0 - Production on Mon Sep 24 18:09:39 2012
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected.
User altered.
User altered.
User altered.
User altered.
Database closed.
Database dismounted.
ORACLE instance shut down.
ORACLE instance started.
Total System Global Area 134217728 bytes
Fixed Size 2054448 bytes
Variable Size 79693520 bytes
Database Buffers 50331648 bytes
Redo Buffers 2138112 bytes
Database mounted.
Database altered.
Database altered.
Disconnected from Oracle Database 10g Release 10.2.0.4.0 - 64bit Production
oracle:dupdb@kacdb4:/u01/app/oracle/KAC_SCRIPTS/dupdb/logs->
Here is the duplicate log from this morning:
oracle:dupdb@kacdb4:/u01/app/oracle/KAC_SCRIPTS/dupdb/logs-> more clone_database_from_common_20120926.log
SQL*Plus: Release 10.2.0.4.0 - Production on Wed Sep 26 08:28:31 2012
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected.
SQL> spool /u01/app/oracle/KAC_SCRIPTS/dupdb/logs/DBShutdown.log
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> spool off
SQL> exit;
Disconnected from Oracle Database 10g Release 10.2.0.4.0 - 64bit Production
SQL*Plus: Release 10.2.0.4.0 - Production on Wed Sep 26 08:28:42 2012
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected to an idle instance.
File created.
ORACLE instance started.
Total System Global Area 134217728 bytes
Fixed Size 2054448 bytes
Variable Size 79693520 bytes
Database Buffers 50331648 bytes
Redo Buffers 2138112 bytes
Disconnected from Oracle Database 10g Release 10.2.0.4.0 - 64bit Production
Recovery Manager: Release 10.2.0.4.0 - Production on Wed Sep 26 08:28:45 2012
Copyright (c) 1982, 2007, Oracle. All rights reserved.
connected to target database: KEDSP (DBID=3370721566)
connected to auxiliary database: DUPDB (not mounted)
RMAN> RUN
2> {
3> ALLOCATE AUXILIARY CHANNEL aux1 DEVICE TYPE DISK;
4>
5> set until scn 211054288;
6> DUPLICATE TARGET DATABASE TO dupdb
7> PFILE=/u01/app/oracle/product/10.2.0/db_1/dbs/initdupdb.ora
8> DB_FILE_NAME_CONVERT=('/usr/local/OLlinks/kedsp/system/','/usr/local/OLlinks/dupdb/system/','/usr/local/OLlinks/kedsp/temp/','/us
r/local/OLlinks/dupdb/temp/','/usr/local/OLlinks/kedsp/data01/','/usr/local/OLlinks/dupdb/data01/','/usr/local/OLlinks/kedsp/index01
/','/usr/
9> local/OLlinks/dupdb/index01/')
10> LOGFILE
11> GROUP 1 (
12> '/usr/local/OLlinks/dupdb/redo01/redo0101.log',
13> '/usr/local/OLlinks/dupdb/redo02/redo0102.log',
14> '/usr/local/OLlinks/dupdb/redo03/redo0103.log'
15> ) SIZE 50M,
16> GROUP 2 (
17> '/usr/local/OLlinks/dupdb/redo01/redo0201.log',
18> '/usr/local/OLlinks/dupdb/redo02/redo0202.log',
19> '/usr/local/OLlinks/dupdb/redo03/redo0203.log'
20> ) SIZE 50M,
21> GROUP 3 (
22> '/usr/local/OLlinks/dupdb/redo01/redo0301.log',
23> '/usr/local/OLlinks/dupdb/redo02/redo0302.log',
24> '/usr/local/OLlinks/dupdb/redo03/redo0303.log'
25> ) SIZE 50M,
26> GROUP 4 (
27> '/usr/local/OLlinks/dupdb/redo01/redo0401.log',
28> '/usr/local/OLlinks/dupdb/redo02/redo0402.log',
29> '/usr/local/OLlinks/dupdb/redo03/redo0403.log'
30> ) SIZE 50M,
31> GROUP 5 (
32> '/usr/local/OLlinks/dupdb/redo01/redo0501.log',
33> '/usr/local/OLlinks/dupdb/redo02/redo0502.log',
34> '/usr/local/OLlinks/dupdb/redo03/redo0503.log'
35> ) SIZE 50M,
36> GROUP 6 (
37> '/usr/local/OLlinks/dupdb/redo01/redo0601.log',
38> '/usr/local/OLlinks/dupdb/redo02/redo0602.log',
39> '/usr/local/OLlinks/dupdb/redo03/redo0603.log'
40> ) SIZE 50M,
41> GROUP 7 (
42> '/usr/local/OLlinks/dupdb/redo01/redo0701.log',
43> '/usr/local/OLlinks/dupdb/redo02/redo0702.log',
44> '/usr/local/OLlinks/dupdb/redo03/redo0703.log'
45> ) SIZE 50M,
46> GROUP 8 (
47> '/usr/local/OLlinks/dupdb/redo01/redo0801.log',
48> '/usr/local/OLlinks/dupdb/redo02/redo0802.log',
49> '/usr/local/OLlinks/dupdb/redo03/redo0803.log'
50> ) SIZE 50M,
51> GROUP 9 (
52> '/usr/local/OLlinks/dupdb/redo01/redo0901.log',
53> '/usr/local/OLlinks/dupdb/redo02/redo0902.log',
54> '/usr/local/OLlinks/dupdb/redo03/redo0903.log'
55> ) SIZE 50M,
56> GROUP 10 (
57> '/usr/local/OLlinks/dupdb/redo01/redo1001.log',
58> '/usr/local/OLlinks/dupdb/redo02/redo1002.log',
59> '/usr/local/OLlinks/dupdb/redo03/redo1003.log'
60> ) SIZE 50M
61> ;
62> }
63>
using target database control file instead of recovery catalog
allocated channel: aux1
channel aux1: sid=242 devtype=DISK
executing command: SET until clause
Starting Duplicate Db at 26-SEP-12
contents of Memory Script:
set until scn 211054288;
set newname for datafile 1 to
"/usr/local/OLlinks/dupdb/system/system01.dbf";
set newname for datafile 2 to
"/usr/local/OLlinks/dupdb/system/undotbs01.dbf";
set newname for datafile 3 to
"/usr/local/OLlinks/dupdb/system/sysaux01.dbf";
set newname for datafile 4 to
"/usr/local/OLlinks/dupdb/system/users01.dbf";
set newname for datafile 5 to
"/usr/local/OLlinks/dupdb/data01/data1.dbf";
set newname for datafile 6 to
"/usr/local/OLlinks/dupdb/index01/index1.dbf";
restore
check readonly
clone database
executing Memory Script
executing command: SET until clause
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 26-SEP-12
released channel: aux1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 09/26/2012 08:28:53
RMAN-03015: error occurred in stored script Memory Script
RMAN-06026: some targets not found - aborting restore
RMAN-06023: no backup or copy of datafile 6 found to restore
RMAN-06023: no backup or copy of datafile 5 found to 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
Recovery Manager complete.
SQL*Plus: Release 10.2.0.4.0 - Production on Wed Sep 26 08:28:53 2012
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected.
alter user sys identified by "Sco_tch!1"
ERROR at line 1:
ORA-01109: database not open
alter user system identified by "Sco_tch!1"
ERROR at line 1:
ORA-01109: database not open
alter user dbsnmp identified by "Sco_tch!1"
ERROR at line 1:
ORA-01109: database not open
alter user sysman identified by "Sco_tch!1"
ERROR at line 1:
ORA-01109: database not open
ORA-01507: database not mounted
ORACLE instance shut down.
ORACLE instance started.
Total System Global Area 134217728 bytes
Fixed Size 2054448 bytes
Variable Size 79693520 bytes
Database Buffers 50331648 bytes
Redo Buffers 2138112 bytes
ORA-00205: error in identifying control file, check alert log for more info
alter database noarchivelog
ERROR at line 1:
ORA-01507: database not mounted
alter database open
ERROR at line 1:
ORA-01507: database not mounted
Disconnected from Oracle Database 10g Release 10.2.0.4.0 - 64bit Production
oracle:dupdb@kacdb4:/u01/app/oracle/KAC_SCRIPTS/dupdb/logs->
Please let me know if you need anything else.
Sincerely,
Elizabeth -
Oracle EE 11.2.0.2 RMAN Duplicate interesting issue - is it a bug?
Hi,
Oracle EE 11.2.0.2 RHEL 5.7 x86 64-bit RACOne Node database (3 - nodes).
I was working on a process to refresh out test environment with prod database backup from tape and i have done it many times. Most of our environment is in 10gR2 and have few on 11.2.0.2 RACOne Node databases. The recovery basics in Oracle world is to use archive log sequence + 1 (provided we know before hand the backups metadata) and it works as expected until 10g but with 11.2.0.2 RMAN duplicate, i stumbled upon an issue where RMAN is trying to restore an older controlfile auto backup and then rolling forward from there. Its easy to explain with an example..
1) I have an archivelog backup, say sequence 20 to 30 on Feb 22nd @ 10pm and a controlfile autobackup at this time c-20120222
2) I have a FULL backup + archive log until sequence 50 on Feb 23nd@ 6pm and a controlfile autobackup at this time c-20120223
3) I am using RMAN duplicate to refresh UAT with Feb 23rd backup and use "set until sequence 51 thread 1"I am using following RMAN commands to do the duplicate on UAT server (executed on UAT server)
rman target sys/***@PROD_DB auxiliary /
RMAN> run
2> {
3> allocate auxiliary channel c1 device type disk;
4> allocate auxiliary channel c2 device type disk;
5> allocate auxiliary channel c3 device type disk;
6> set until sequence 51 thread 1;
7> duplicate target database to UAT_DB;
8> }RMAN duplicate automates all that we do manually but the recovery mechanism is same. In the above scenario, it connects to target database, gets the backup metadata and restores controlfile from c-20120223 , restores the datafiles and recovers till sequence 50 . This has been the scenario until 10g in every RMAN duplicate process i have tried and is expected from Oracle.
Issue:
In 11gR2 (11.2.0.2), for the same duplicate scenario above, it is restoring the controlfile from autobackup c-20120222 and restoring the datafiles from Feb 23rd backup, recovering till sequence 50 and doing the duplicate process. The thing to note here is that the controlfile autobackup c-20120222 does not have any record of the FULL backup that occured on Feb 23 rd and since RMAN duplicate is having a connection to target database, it knows the backup metadata and hence it is able to complete the recovery.
For clarification, Thread 1 & 2 of RAC One Node is not an issue here for sure. Did anyone experience this issue? Any insight into this would be greatly appreciated.
Thanks,
ShivaAJ,
I have already tried that scenario, i renamed the c-20120222 and kicked off the same duplicate process but it failed and it kept on "fail-over to previous backup" which is expected. The thing is, RMAN look's for the control file autobackups from newest to oldest (unless you gave a point in time) and duplicate command is not doing it.
Tycho,
I agree there are new features but to support them a change in recovery mechanism is something i would disagree that Oracle would do. Active Duplication is not based on backups, so that is out of question here. For backup-based duplication, we can try with connections to target or targetless, catalog or catalogless or none. I have already given an example with the target (same with target + catalog) and i expect the same behavior with only catalog connection. Now, i have tested the example without connecting to target or catalog and below are my observations...
For the same backups i mentioned in the very first email, i got the following info....
rman target /
Recovery Manager: Release 11.2.0.2.0 - Production on Fri Feb 24 12:35:54 2012
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
connected to target database: RMANTEST (DBID=3789692530)
RMAN> list backup of archivelog sequence 95;
using target database control file instead of recovery catalog
List of Backup Sets
===================
BS Key Size Device Type Elapsed Time Completion Time
11 2.50K DISK 00:00:00 23-FEB-12 18:05:40
BP Key: 11 Status: AVAILABLE Compressed: YES Tag: TAG20120222T094240
Piece Name: /u01/app/oracle/exp/rmantest_stl/full_backup/rmantest_stl_0bn3upkg_1_1.arch
List of Archived Logs in backup set 11
Thrd Seq Low SCN Low Time Next SCN Next Time
1 95 346280 23-FEB-12 18:05:10 346302 23-FEB-12 18:05:30I got the scn_to_timestamp for the NEXT_SCN of sequence 95, which should correpond tothe "Next Time" that is the timestamp for the Archive log sequence 96.
SQL> select scn_to_timestamp(346302) as timestamp from dual;
TIMESTAMP
23-FEB-12 18.05.30.000000000 PMNow, i gave the following for targetless & catalogless duplication...
rman auxiliary /
RMAN> run
2> {
3> set until time "to_date('23-FEB-12 18:05:30','DD-MON-YY HH24:MI:SS')";
4> duplicate database to rman01s backup location '/u01/app/oracle/exp/rmantest_stl';
5> }RESULT: Same ISSUE but this time IT FAILED with the error i expected. It went ahead and restored the c-20120222 autobackup control file and tried to restore the datafiles but, as we
know, this control file autobackup does not have record of Feb 23rd + archive log backup, so it FAILS. This is exactly what i told in my first email.
Error Log File:
contents of Memory Script:
sql clone "alter system set control_files =
''+RMAN01D_DATA/rman01s_stl1/controlfile/current.270.776081841'', ''+RMAN01D_RECO/rman01s_stl1/controlfile/current.263.776081841'' comment=
''Set by RMAN'' scope=spfile";
sql clone "alter system set db_name =
''RMANTEST'' comment=
''Modified by RMAN duplicate'' scope=spfile";
shutdown clone immediate;
startup clone force nomount
restore clone primary controlfile from '/u01/app/oracle/exp/rmantest_stl/c-20120222';
alter clone database mount;
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 13371
ORA-06512: at line 1
RMAN-03015: error occurred in stored script Memory Script
RMAN-06026: some targets not found - aborting restore
RMAN-06023: no backup or copy of datafile 5 found to 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
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 02/24/2012 10:18:04
RMAN-05501: aborting duplication of target databaseSo, my next test was not to give any Point In Time, that is just issue the duplicate without SET UNIL clause and this time, and this time it behaved, it restored the control file from c-20120223 and completed the duplicate process. So what does this tell us? We cannot do a POINT IN TIME duplicate using RMAN DUPLICATE????
rman auxiliary /
RMAN> run
2> {
3> duplicate database to rman01s backup location '/u01/app/oracle/exp/rmantest_stl';
4> }
contents of Memory Script:
sql clone "alter system set control_files =
''+RMAN01D_DATA/rman01s_stl1/controlfile/current.270.776089489'', ''+RMAN01D_RECO/rman01s_stl1/controlfile/current.263.776089489'' comment=
''Set by RMAN'' scope=spfile";
sql clone "alter system set db_name =
''RMANTEST'' comment=
''Modified by RMAN duplicate'' scope=spfile";
shutdown clone immediate;
startup clone force nomount
restore clone primary controlfile from '/u01/app/oracle/exp/rmantest_stl/c-20120223';
alter clone database mount;
}Just checking if anyone stumbled upon these findings. An Oracle SR is already in place, so just waiting for an update from them.
Thanks,
Shiva -
RMAN DUPLICATE FOR STANDBY FROM ACTIVE DATABASE fails
Hello
I'm trying to use RMAN DUPLICATE to create a standby database using Oracle 11.2.0.3 with PSU 6 on HP-UX.
Primary is 2 node RAC. Standby is also 2 node RAC.
Standby database instance is started in nomount mode.
I use:
duplicate target database for standby from active database
spfile
<some spfile parameters>
with PFILE I get:
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 10/01/2013 12:41:13
RMAN-05501: aborting duplication of target database
RMAN-03015: error occurred in stored script Memory Script
RMAN-03009: failure of sql command on clone_default channel at 10/01/2013 12:41:13
RMAN-11003: failure during parse/execution of SQL statement: alter system set spfile= '/opt/oracle/db11203/dbs/spfileCU1.ora'
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-01565: error in identifying file '/opt/oracle/db11203/dbs/spfileCU1.ora'
ORA-27037: unable to obtain file status
HPUX-ia64 Error: 2: No such file or directory
With SPFILE I get;
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 10/01/2013 13:06:34
RMAN-05501: aborting duplication of target database
RMAN-05537: DUPLICATE without TARGET connection when auxiliary instance is started with spfile cannot use SPFILE clause
But I do have RMAN connexion to target database.
Thanks for your help.Here is the output beginning of the script which clearly shows that I'm always connected to target database:
Recovery Manager: Release 11.2.0.3.0 - Production on Tue Oct 1 13:05:47 2013
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database: CU (DBID=1143962925)
connected to auxiliary database: CU (not mounted)
RMAN> set echo on
2> run
3> {
4> configure device type disk parallelism 10;
5> allocate channel pr1 type disk;
6> allocate channel pr2 type disk;
7> allocate channel pr3 type disk;
8> allocate channel pr4 type disk;
9> allocate channel pr5 type disk;
10> allocate channel pr6 type disk;
11> allocate channel pr7 type disk;
12> allocate channel pr8 type disk;
13> allocate channel pr9 type disk;
14> allocate channel pr10 type disk;
15> allocate auxiliary channel st1 type disk;
16> allocate auxiliary channel st2 type disk;
17> allocate auxiliary channel st3 type disk;
18> allocate auxiliary channel st4 type disk;
19> allocate auxiliary channel st5 type disk;
20> allocate auxiliary channel st6 type disk;
21> allocate auxiliary channel st7 type disk;
22> allocate auxiliary channel st8 type disk;
23> allocate auxiliary channel st9 type disk;
24> allocate auxiliary channel st10 type disk;
25> duplicate target database for standby from active database
26> spfile -
Why do we use RMAN DUPLICATE for cloning DB on a different server ?
DB version : 11.2.0.2, 10.2.0.5
I want to create a clone of my Production DB in a test server. In the past, I have taken hot backup of this production DB and restored and recovered it in a different server using plain RMAN commands.
After restoring the control file , mounting the DB and cataloging the backup pieces in the test server , I run
run {
restore database ;
recover database until time <time> ;
alter database open resetlogs ;
}In OTN , i came across long running discussions like
RMAN duplicate database
where they are trying to restore and recover using DUPLICATE command as shown below.
run
duplicate target database to RBS
nofilenamecheck
pfile=/tmp/aux.ora;
Can't they just use plain RMAN restore and recover commands as I did ? What advantage does RMAN DUPLICATE have over the plain commands ?RMAN DUPLICATE is designed to give to clone database a new database name and new database identifier:
>
If you copy a database with operating system utilities instead of the DUPLICATE command, then the DBID of the copied database remains the same as the original database. To register the copy database in the same recovery catalog with the original, you must change the DBID with the DBNEWID utility (see Oracle Database Utilities). In contrast, the DUPLICATE command automatically assigns the duplicate database a different DBID so that it can be registered in the same recovery catalog as the source database. -
Hi:
I was doing a 11g database clone on linux using rman duplicate. After runing 40min, it stopped and got the following errors. All the file permission are the same 777, one third of files have been copied.
ORA-27041: unable to open file
Linux-x86_64 Error: 13: Permission denied
Additional information: 9
failover to previous backup
released channel: aux1
released channel: aux2
released channel: aux3
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 05/30/2012 08:28:07
RMAN-05501: aborting duplication of target database
RMAN-03015: error occurred in stored script Memory Script
RMAN-20506: no backup of archived log found
RMAN-06053: unable to perform media recovery because of missing log
RMAN-06025: no backup of archived log for thread 1 with sequence 12312 and starting SCN of 23167256063 found to restore
RMAN-06025: no backup of archived log for thread 1 with sequence 12311 and starting SCN of 23167250994 found to restore
RMAN-06025: no backup of archived log for thread 1 with sequence 12310 and starting SCN of 23167245674 found to restore
Thanks and regards.Files from source database:
-rwxrwSrwx 1 root root 48653824 May 29 20:57 db_t784587134_s1208_p1
-rwxrwSrwx 1 root root 48594944 May 29 20:57 db_t784587149_s1209_p1
-rwxrwSrwx 1 root root 7761920 May 29 20:57 db_t784587150_s1210_p1
-rwxrwSrwx 1 root root 4062945280 May 29 21:23 db_t784587170_s1211_p1
-rwxrwSrwx 1 root root 1124147200 May 29 21:07 db_t784587170_s1212_p1
-rwxrwSrwx 1 root root 2049015808 May 29 21:16 db_t784587725_s1213_p1
-rwxrwSrwx 1 root root 4012630016 May 29 21:36 db_t784588310_s1214_p1
-rwxrwSrwx 1 root root 4620419072 May 29 21:43 db_t784588726_s1215_p1
-rwxrwSrwx 1 root root 3724255232 May 29 21:52 db_t784589461_s1216_p1
-rwxrwSrwx 1 root root 1818624 May 29 21:43 db_t784589896_s1217_p1
-rwxrwSrwx 1 root root 2071040 May 29 21:52 db_t784590427_s1218_p1
There are about 30 dbf files on source database, 10 dbf files on target database now. -
RMAN duplicate target database error
Hello,
I’m trying to use RMAN ‘duplicate target from active database’ to a remote host however I’m getting a confusing error:
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 11/19/2009 13:47:23
RMAN-03015: error occurred in stored script Memory Script
RMAN-03009: failure of backup command on aux13 channel at 11/19/2009 13:47:23
ORA-19504: failed to create file "+DATA2"
RMAN-03009: failure of backup command on aux14 channel at 11/19/2009 13:47:23
ORA-19504: failed to create file "+DATA2"
Here’s my script:
connect target sys/<password>@node1;
connect auxiliary sys/<password>@node2;
spool log to '/u01/app/oracle/dba/duplicate111909.log'
run
allocate auxiliary channel aux11 device type disk;
allocate auxiliary channel aux12 device type disk;
allocate channel aux13 device type disk;
allocate channel aux14 device type disk;
duplicate target database to node2 from active database DB_FILE_NAME_CONVERT='+DATA1','+DATA2';
release channel aux14;
release channel aux13;
release channel aux12;
release channel aux11;
spool log off;
exit;
Node1 uses ASM disk group DATA1 and I intend to use ASM disk group DATA2 on node2. Has anyone seen this error before? I have tried various permutations of DB_FILE_NAME_CONVERT clauses but all error with ORA-19504. On a side note I was able to use ASMCMD cp command to copy a datafile from node1 DATA1 to node 2 DATA2. Also, if I use disk group DATA1 on node 2 then the RMAN duplicate command runs successfully, it only errors when using DATA2. And yes +DATA2 is mounted on node2:
SQL> select name, state from v$asm_diskgroup;
NAME STATE
DATA1 MOUNTED
DATA2 MOUNTED
Any and all ideas are welcome. I’m running out of things to check.
Thanks,
RJLFor a duplicate you don't need to give the DB_FILE_NAME_CONVERT especially if you go from a asm to asm diskgroup.
The place where it'll put all the files will be automatically done taking care of the init.ora file parameter db_create_file_dest, (db_create_online_log_dest_1) -
I was executing RMAN DUPLICATE and received this error?
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 11/08/2007 13:41:22
RMAN-03015: error occurred in stored script Memory Script
RMAN-04014: startup failed: ORA-01078: failure in processing system parameters
RMAN-04017: startup error description: LRM-00109: could not open parameter file
'/u01/app/oracle/product/10.2.0/dbs/initDPDEVUG.ora'
Anybody knows how to fix this error?I had this file only in CLONED databae $ORACLE_HOME/dbs. I copy this file into SOURCE database $ORACLE_HOME/dbs. Since duplicate initiation going from SOURCE to CLONED. May this is problem?
I am going to re start Clone process and let you know if this was the case -
Another RMAN duplicate problem - RAC database to single instance
Hi,
I have a problem with the RMAN duplicate procedure and was hoping someone can help.
I would like to create a duplicate of our production RAC database on a separate, stand-alone, database server on another site. This duplicate will be used for intensive querying by another business unit who I don't want to have access to our production database.
My procedure goes like this:
1. Create a disk (not ASM) based backup of the datafiles and any archived redo logs:
"run {
allocate channel d1 type disk;
backup format '/u02/stage/df_t%t_s%s_p%p' database plus archivelog delete input;
release channel d1;
2. Tar and scp these files to the same location on the stand-alone database server.
3. In the meantime, work has been happening on the production database and further archived redo logs have been generated. I don't really care about these logs for the purposes of the duplicate however, I just want to duplicate to the point of the recent backup. To do this, I run the following SQL to determine the sequence number that I should be duplicating up to:
"select max(sequence#), thread# from v$archived_log where deleted='YES' group by thread#;"
4. Duplicate the production database to the stand-alone database (all the SQL Net stuff is working).
"run {
set until sequence (value returned by above SQL statement);
duplicate target database to XXX;
However, my problem arises because I don't know how to handle the fact that there are two threads. I understand that each thread relates to one of the RAC instances, I just don't know which one to specify for the duplicate. We have a database service which the client application connects through, and that service runs on on or other of the instances. Should I just care about the logs from the instance where the service is currently running?
Am I even approaching this is the correct way?
I look forward to any help that people may be able to offer.
Regards,
PhilHi Werner,
Thanks again for your help, there is still something wrong though. "list backup of archivelog all;" shows:
BS Key Size Device Type Elapsed Time Completion Time
3784 202.34M DISK 00:00:08 28-OCT-09
BP Key: 3784 Status: AVAILABLE Compressed: NO Tag: TAG20091028T111718
Piece Name: /u02/stage/df_t701435838_s3820_p1
List of Archived Logs in backup set 3784
Thrd Seq Low SCN Low Time Next SCN Next Time
1 9746 569095777 28-OCT-09 569150229 28-OCT-09
1 9747 569150229 28-OCT-09 569187892 28-OCT-09
1 9748 569187892 28-OCT-09 569231956 28-OCT-09
1 9749 569231956 28-OCT-09 569259816 28-OCT-09
2 7931 569095774 28-OCT-09 569187902 28-OCT-09
2 7932 569187902 28-OCT-09 569259814 28-OCT-09
BS Key Size Device Type Elapsed Time Completion Time
3787 1.04M DISK 00:00:02 28-OCT-09
BP Key: 3787 Status: AVAILABLE Compressed: NO Tag: TAG20091028T112222
Piece Name: /u02/stage/df_t701436142_s3823_p1
List of Archived Logs in backup set 3787
Thrd Seq Low SCN Low Time Next SCN Next Time
1 9750 569259816 28-OCT-09 569261110 28-OCT-09
2 7933 569259814 28-OCT-09 569261108 28-OCT-09
You can see that the highest sequence number is 9750 of thread 1, and that the Low and Next SCNs are 569259816 and 56926111. However, when I look at the output of the RMAN duplicate command:
contents of Memory Script:
set until scn 569505448;
recover
clone database
delete archivelog
executing Memory Script
executing command: SET until clause
Starting recover at 28-OCT-09
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: sid=39 devtype=DISK
starting media recovery
Oracle Error:
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01194: file 4 needs more recovery to be consistent
ORA-01110: data file 4: '/u02/sca-standby/data/users.260.623418479'
RMAN-03002: failure of Duplicate Db command at 10/28/2009 16:12:55
RMAN-03015: error occurred in stored script Memory Script
RMAN-06053: unable to perform media recovery because of missing log
RMAN-06025: no backup of log thread 2 seq 7936 lowscn 569411744 found to restore
RMAN-06025: no backup of log thread 2 seq 7935 lowscn 569321987 found to restore
RMAN-06025: no backup of log thread 2 seq 7934 lowscn 569261108 found to restore
RMAN-06025: no backup of log thread 1 seq 9758 lowscn 569471890 found to restore
RMAN-06025: no backup of log thread 1 seq 9757 lowscn 569440076 found to restore
RMAN-06025: no backup of log thread 1 seq 9756 lowscn 569411439 found to restore
RMAN-06025: no backup of log thread 1 seq 9755 lowscn 569378529 found to restore
RMAN-06025: no backup of log thread 1 seq 9754 lowscn 569358970 found to restore
RMAN-06025: no backup of log thread 1 seq 9753 lowscn 569321882 found to restore
RMAN-06025: no backup of log thread 1 seq 9752 lowscn 569284238 found to restore
RMAN-06025: no backup of log thread 1 seq 9751 lowscn 569261110 found to restore
you can see that something is setting the recovery SCN to 569505448 which higher even then any of the archived logs mentioned above. If I select current_scn from the production database, this gives me 569528258 which is closer to the value which RMAN is expecting to recover to than any of the archived redo logs.
Can you think what might be causing RMAN to try to recover to this value? and why does it appear to be ignoring the SET UNTIL SEQUENCE command?
Cheers,
Phil -
Database refresh without using RMAN duplicate
Hi All,
I am planning to refresh my test instance to a PIT using RMAN backups from PROD. I would like to know the process without connecting to PROD database and without using RMAN duplicate command.
Thanks.imran khan wrote:
Can you please show the demo first then we will discuss on it more.. what if the folk wants to refresh it ten times then we have to change the database name ten times using NID?
>Can you please show the demo first then we will discuss on it more.. what if the folk wants to refresh it ten times then we have to change the database name ten times using NID?
1) You use nid only to change the dbid.
2) I have done this type of cloning much more than 50 times.
3) As Iordan Iotzov pointed out, in 11gR2 you can run DUPLICATE database without being connected to the PROD
Here is a sample code of how to do it assuming both file system are the same:
# -- RMAN Restore to another server
rman <<EOF2
CONNECT TARGET /;
STARTUP NOMOUNT
SET DBID 987654321;
CONNECT CATALOG rman/rman@rcvcat
RUN {
SET UNTIL SEQUENCE=5678 THREAD=1;
ALLOCATE CHANNEL ch0 DEVICE TYPE DISK;
RESTORE CONTROLFILE;
ALTER DATABASE MOUNT;
RUN
SET UNTIL SEQUENCE=5678 THREAD=1;
ALLOCATE CHANNEL ch0 DEVICE TYPE DISK;
ALLOCATE CHANNEL ch1 DEVICE TYPE DISK;
ALLOCATE CHANNEL ch2 DEVICE TYPE DISK;
ALLOCATE CHANNEL ch3 DEVICE TYPE DISK;
RESTORE DATABASE;
RECOVER DATABASE;
EXIT;
EOF2:p -
Ora-1276 cannot add controlfile - rman duplicate asm database
Hi,
I am trying to duplicate an asm database olddb -> asm database dup in the same diskgroup. somehow got error 0ra-1276 Cannot add file +DISK1/dup/controlfile/current.1669.754164181. File has an Oracle Managed Files file name.
There is nothing in the asm directory +DISK1/dup/controllfile before I run the rman.
in the initdup.ora
control_files=+DISK1,+DISK1 <--- just the disk group, not the file name
db_name='dup'
db_file_name_convert=+DISK1,+DISK1/dup
log_file_name_convert=+DISK1,+DISK1
Recovery Manager: Release 10.2.0.5.0 - Production on Sat Jun 18 20:58:06 2011
Copyright (c) 1982, 2007, Oracle. All rights reserved.
RMAN> connect target sys/oracle@OLDDB
connect auconnected to target database: OLDDB (DBID=1142960293)
RMAN> xiliary /
connected to auxiliary database: DUP (not mounted)
RMAN> duplicate target database to dup
logfile group 1 ('+DISK1/dup') size 200k ,
group 2 ('+DISK1') size 200k;
2> 3>
Starting Duplicate Db at 2011/06/18 20:58:39
using target database control file instead of recovery catalog
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: sid=153 devtype=DISK
WARNING: DB_FILE_NAME_CONVERT resulted in invalid ASM names; names changed to diskgroup only.
contents of Memory Script:
set until scn 1613638;
set newname for datafile 1 to
"+DISK1";
set newname for datafile 2 to
"+DISK1";
set newname for datafile 3 to
"+DISK1";
set newname for datafile 4 to
"+DISK1";
set newname for datafile 6 to
"+DISK1";
restore
check readonly
clone database
executing Memory Script
executing command: SET until clause
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 2011/06/18 20:58:42
using channel ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: starting datafile backupset restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to +DISK1
restoring datafile 00002 to +DISK1
restoring datafile 00003 to +DISK1
restoring datafile 00004 to +DISK1
restoring datafile 00006 to +DISK1
channel ORA_AUX_DISK_1: reading from backup piece +DISK1/OLDDB/backupset/2011_05_22/nnndf0_tag20110522t000530_0.1691.751766731
channel ORA_AUX_DISK_1: restored backup piece 1
piece handle=+DISK1/OLDDB/backupset/2011_05_22/nnndf0_tag20110522t000530_0.1691.751766731 tag=TAG20110522T000530
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:01:06
Finished restore at 2011/06/18 20:59:48
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "DUP" RESETLOGS ARCHIVELOG
MAXLOGFILES 192
MAXLOGMEMBERS 3
MAXDATAFILES 1024
MAXINSTANCES 32
MAXLOGHISTORY 292
LOGFILE
GROUP 1 ( '+DISK1/dup' ) SIZE 200 K ,
GROUP 2 ( '+DISK1' ) SIZE 200 K
DATAFILE
'+DISK1/dup/datafile/system.1674.754174727'
CHARACTER SET WE8ISO8859P1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 06/18/2011 20:59:48
RMAN-06136: ORACLE error from auxiliary database: ORA-01503: CREATE CONTROLFILE failed
ORA-01276: Cannot add file +DISK1/dup/controlfile/current.1669.754164181. File has an Oracle Managed Files file name.
RMAN>
thank you very much for your help.
thanks
andrewRMAN-06136: ORACLE error from auxiliary database: ORA-01503: CREATE CONTROLFILE failed
ORA-01276: Cannot add file +DISK1/dup/controlfile/current.1669.754164181. File has an Oracle Managed Files file name.Are you sure is it running under pfile?
Ok, connect to auxiliary intance and post
show parameter db_create
show parameter control_filesIn your pfile, Have you mentioned single quotes?
If your database with OMF then if you give it as below. as there is some work around
Control_files='+DISK1/DUP/controlfile/control01.ctl','+DISK1/DUP/controlfile/control02.ctl'
Check this too *Ora-1276 Error Recreating The Controlfile When Using +Asm [ID 303187.1]* -
ORA-01017 when RMAN duplicate from active database
Hello, ORACLE guru's!
I've got some trouble trying to duplicate DB via RMAN duplicate from active database.
The script is simple:
run
allocate channel ch1 device type disk;
allocate auxiliary channel aux1 device type disk;
duplicate target database to mydb from active database;
The problem is in this statement:
Starting backup at 15-JAN-14
channel ch1: starting datafile copy
copying current control file
Oracle instance started
Total System Global Area 10689474560 bytes
Fixed Size 2237776 bytes
Variable Size 4227861168 bytes
Database Buffers 6442450944 bytes
Redo Buffers 16924672 bytes
contents of Memory Script:
sql clone "alter system set db_name =
''mydb'' 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 = ''mydb'' comment= ''Reset to original value by RMAN'' scope=spfile
sql statement: alter system reset db_unique_name scope=spfile
Oracle instance shut down
released channel: ch1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 01/15/2014 12:16:07
RMAN-05501: aborting duplication of target database
RMAN-03015: error occurred in stored script Memory Script
RMAN-03009: failure of backup command on ch1 channel at 01/15/2014 12:15:57
ORA-17629: Cannot connect to the remote database server
ORA-17627: ORA-01017: invalid username/password; logon denied
ORA-17629: Cannot connect to the remote database server
RMAN>
RMAN>change:
export ORACLE_SID="mydb"
export ORACLE_HOME="/u/app/oracle/product/11.2/db_1"
FILE1 = "/u/app/oracle/product/11.2/db_1/bin/"
cat > $FILE1/sqlplus sys/karen as sysdba << EOF
startup nomount;
exit;
EOF
cat > $FILE1/rman target sys/karen@mytargetdb auxiliary sys/karen@mydb << EOF
run
allocate channel ch1 device type disk;
allocate auxiliary channel aux1 device type disk;
duplicate target database to mydb from active database;
EOF
tell us if it works and again, from what host are you running the script?
Maybe you are looking for
-
Windows - No Disk error message when connecting Ipod to computer
I recently connected my Ipod to the Computer as I have done for the last year and I am now getting an error message reading: "Windows - No Disk". It then asks me to insert a disk. I cannot cancel out, continue or retry which are the three choices. I
-
IPod Touch 4th Gen. will not turn on!
My iPod touch 4th Generation will not turn on. I've only had it since September and have barely used it. I plug it into my computer and it doesn't charge, it doesn't turn on even with a low battery symbol... my computer doesn't even recognize it as b
-
How to upload excel fiel with 'FileUpload' UI element ?
Hi, my customer donot want to upload excel in CSV format. And how could i convert excel file into my internal table? BR.
-
Trouble including registered XML Schema in generated XML
Hello, I'm new to XMLDB, and find myself wanting to build an XML document that conforms to a paricular XML schema. I'm looking for help in "passing" the shema into the xml query, and for advice (i may not be going about things in the best way possibl
-
How to break a loop when if condition is not satisfied
Hi, I need some help on the following code. I know how to use CONTINUE or EXIT in loop but the problem is inside the loop i am using subroutine in which i am using if conditions. if one of those if conditions are not satified then it has to come out