structuredweb
asked on
RMAN DUPLICATE command stopped working
DUPLICATE command which used to work now not working - missing SPFILE
We have a production database, on which a DBA who has left us has created a working setup of backups, and on-demand duplication to target databases on other DB servers.
Production Database & Server:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
Linux <hostname> 2.6.18-308.1.1.0.1.el5 #1 SMP Wed Mar 7 11:39:17 EST 2012 x86_64 x86_64 x86_64 GNU/Linux
job defined on the OEM
==========================
the shell script run from the OEM executes this on the target Database server:
rman AUXILIARY SYS/${SYSTEM_PASSWD}@<targ et-DB-name > LOG /tmp/<target-DB-name>_refr esh_rman.l og @/home/oracle/admin/refres h_db/<targ et-DB-name >/<target- DB-name>_r efresh.rma n
<target-DB-name>_refresh.r man file contents:
========================== ========== ========== ====
run {
Allocate auxiliary channel d1 DEVICE TYPE disk;
Allocate auxiliary channel d2 DEVICE TYPE disk;
Allocate auxiliary channel d3 DEVICE TYPE disk;
Allocate auxiliary channel d4 DEVICE TYPE disk;
DUPLICATE TARGET DATABASE TO <target-DB-name> BACKUP LOCATION '/oracle/BACKUP/<prod-DB-n ame>'
DB_FILE_NAME_CONVERT '/oracle/oradata/<prod-DB- SID>','/or acle/orada ta/<target -DB-name>' ,'/oracle/ oradata/<p rod-DB-nam e>','/orac le/oradata /<target-D B-name>',' /oracle/ar chive/<pro d-DB-SID>' ,'/oracle/ archive/<t arget-DB-n ame>','/or acle/archi ve/<prod-D B-name>',' /oracle/ar chive/<tar get-DB-nam e>','/orac le/softwar e/admin/<p rod-DB-SID >','/oracl e/software /admin/<ta rget-DB-na me>','/ora cle/softwa re/admin/< prod-DB-na me>','/ora cle/softwa re/admin/< target-DB- name>','/o racle/soft ware/diag/ rdbms/swpr od_p','/or acle/softw are/diag/r dbms/swdev ','/oracle /software/ diag/rdbms /swprod_p/ <prod-DB-n ame>','/or acle/softw are/diag/r dbms/swdev /<target-D B-name>',' /oracle/so ftware/dia g/rdbms/sw prod','/or acle/softw are/diag/r dbms/swdev ','/oracle /software/ diag/rdbms /swprod/<p rod-DB-nam e>','/orac le/softwar e/diag/rdb ms/swdev/< target-DB- name>'
SPFILE
PARAMETER_VALUE_CONVERT '/oracle/oradata/<prod-DB- SID>','/or acle/orada ta/<target -DB-name>' ,'/oracle/ oradata/<p rod-DB-nam e>','/orac le/oradata /<target-D B-name>',' /oracle/ar chive/<pro d-DB-SID>' ,'/oracle/ archive/<t arget-DB-n ame>','/or acle/archi ve/<prod-D B-name>',' /oracle/ar chive/<tar get-DB-nam e>','/orac le/softwar e/admin/<p rod-DB-SID >','/oracl e/software /admin/<ta rget-DB-na me>','/ora cle/softwa re/admin/< prod-DB-na me>','/ora cle/softwa re/admin/< target-DB- name>','/o racle/soft ware/diag/ rdbms/swpr od_p','/or acle/softw are/diag/r dbms/swdev ','/oracle /software/ diag/rdbms /swprod_p/ <prod-DB-n ame>','/or acle/softw are/diag/r dbms/swdev /<target-D B-name>',' /oracle/so ftware/dia g/rdbms/sw prod','/or acle/softw are/diag/r dbms/swdev ','/oracle /software/ diag/rdbms /swprod/<p rod-DB-nam e>','/orac le/softwar e/diag/rdb ms/swdev/< target-DB- name>'
SET LOG_FILE_NAME_CONVERT '/oracle/oradata/<prod-DB- SID>','/or acle/orada ta/<target -DB-name>'
SET SGA_MAX_SIZE '3000M'
SET MEMORY_TARGET '3000M'
SET memory_max_target '3000M'
SET dg_broker_start 'false'
SET dispatchers '(PROTOCOL=TCP)'
SET open_cursors '300'
SET log_archive_config ''
SET log_archive_dest_1 ''
SET log_archive_dest_2 ''
SET log_archive_dest_3 ''
SET service_names = '<target-DB-name>'
NOFILENAMECHECK;
}
exit;
log file showsd this:
========================== =
allocated channel: d1
channel d1: SID=2271 device type=DISK
allocated channel: d2
channel d2: SID=2647 device type=DISK
allocated channel: d3
channel d3: SID=3 device type=DISK
allocated channel: d4
channel d4: SID=381 device type=DISK
Starting Duplicate Db at 03-OCT-13
released channel: d1
released channel: d2
released channel: d3
released channel: d4
RMAN-00571: ========================== ========== ========== ========== ===
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ========================== ========== ========== ========== ===
RMAN-03002: failure of Duplicate Db command at 10/03/2013 20:09:44
RMAN-05501: aborting duplication of target database
RMAN-05569: SPFILE backup not found in /oracle/BACKUP/SWPROD
Recovery Manager complete.
backup settings on prod database
========================== ====
all done thru the OEM, attaching screen shots of setup and status, showing SPFILE is created and exists in the backup sets.
We have a production database, on which a DBA who has left us has created a working setup of backups, and on-demand duplication to target databases on other DB servers.
Production Database & Server:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
Linux <hostname> 2.6.18-308.1.1.0.1.el5 #1 SMP Wed Mar 7 11:39:17 EST 2012 x86_64 x86_64 x86_64 GNU/Linux
job defined on the OEM
==========================
the shell script run from the OEM executes this on the target Database server:
rman AUXILIARY SYS/${SYSTEM_PASSWD}@<targ
<target-DB-name>_refresh.r
==========================
run {
Allocate auxiliary channel d1 DEVICE TYPE disk;
Allocate auxiliary channel d2 DEVICE TYPE disk;
Allocate auxiliary channel d3 DEVICE TYPE disk;
Allocate auxiliary channel d4 DEVICE TYPE disk;
DUPLICATE TARGET DATABASE TO <target-DB-name> BACKUP LOCATION '/oracle/BACKUP/<prod-DB-n
DB_FILE_NAME_CONVERT '/oracle/oradata/<prod-DB-
SPFILE
PARAMETER_VALUE_CONVERT '/oracle/oradata/<prod-DB-
SET LOG_FILE_NAME_CONVERT '/oracle/oradata/<prod-DB-
SET SGA_MAX_SIZE '3000M'
SET MEMORY_TARGET '3000M'
SET memory_max_target '3000M'
SET dg_broker_start 'false'
SET dispatchers '(PROTOCOL=TCP)'
SET open_cursors '300'
SET log_archive_config ''
SET log_archive_dest_1 ''
SET log_archive_dest_2 ''
SET log_archive_dest_3 ''
SET service_names = '<target-DB-name>'
NOFILENAMECHECK;
}
exit;
log file showsd this:
==========================
allocated channel: d1
channel d1: SID=2271 device type=DISK
allocated channel: d2
channel d2: SID=2647 device type=DISK
allocated channel: d3
channel d3: SID=3 device type=DISK
allocated channel: d4
channel d4: SID=381 device type=DISK
Starting Duplicate Db at 03-OCT-13
released channel: d1
released channel: d2
released channel: d3
released channel: d4
RMAN-00571: ==========================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ==========================
RMAN-03002: failure of Duplicate Db command at 10/03/2013 20:09:44
RMAN-05501: aborting duplication of target database
RMAN-05569: SPFILE backup not found in /oracle/BACKUP/SWPROD
Recovery Manager complete.
backup settings on prod database
==========================
all done thru the OEM, attaching screen shots of setup and status, showing SPFILE is created and exists in the backup sets.
ASKER
praveencpk,
thanks for tyou answer.
1) The backup exists - you can see in one of the screenshot which the OEM listing the current backups, all are listed in being good. I verified that all the files referred to as the backup sets physically exist on the folder. I also checked the last 3 backup logs, all is good.
what worries me, if you look at then screen shot where is lists the content of the backup set with the controlfile and the SPFILE, it lists the spfile as having size in bytes of only 2 byes!. Is this normal? is there a possibility that the spfile is somewhat corrupted so the duplicate command cannot read it?
how can I verify if my current SPFILE is OK?
failing that, what is the most fool-proof way of generating an new SPFILE? is there any way to avoid a bounce of the Database?
thanks for tyou answer.
1) The backup exists - you can see in one of the screenshot which the OEM listing the current backups, all are listed in being good. I verified that all the files referred to as the backup sets physically exist on the folder. I also checked the last 3 backup logs, all is good.
what worries me, if you look at then screen shot where is lists the content of the backup set with the controlfile and the SPFILE, it lists the spfile as having size in bytes of only 2 byes!. Is this normal? is there a possibility that the spfile is somewhat corrupted so the duplicate command cannot read it?
how can I verify if my current SPFILE is OK?
failing that, what is the most fool-proof way of generating an new SPFILE? is there any way to avoid a bounce of the Database?
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
the vital piece of information in making RMAN work after the failure was the NORESUME parameter,
http://rman-05569.db.quanti.cz/
also check the below document for cloning the DB from source to target using OEM.
http://oracleinout.blogspot.in/2010/04/oracle-enterprise-manager-11g-step-by.html
http://www.dba-oracle.com/t_rman_84_cloning_oem.htm