在上一篇《spfile丢失的恢复
》实验中,恢复过程出现
RMAN-06172: no AUTOBACKUP found or specified handle is not a valid copy or piece,下面我们来详细地讨论一下这个错误产生
的原因和解决的方法。
我们把错误再次贴出来:
RMAN> restore spfile from autobackup;
Starting restore at 16-AUG-14
using channel ORA_DISK_1
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140816
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140815
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140814
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140813
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140812
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140811
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140810
channel ORA_DISK_1: no AUTOBACKUP in 7 days found
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 08/16/2014 03:39:24
RMAN-06172: no AUTOBACKUP found or specified handle is not a valid copy or piece
(1)rman中没有配置configure controlfile autobackup on;
RMAN> show all;
RMAN configuration parameters for database with db_unique_name DUMMY are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO D ISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
这是自动备份控制文件和参数文件的开关,如果没有打开的话,那么就不可能产生自动备份。
(2)rman默认查找7天内的备份,如果7天之内没有发生自动备份,那么rman也将无法找到自动备份。
遇到这种情况一般有两种解决方式:
①restore spfile from autobackup until time 'SYSDATE-N ';
②restore spfile from autobackup maxdays N;
(3)第三种情况就是上篇试验中遇到的。由于autobackup的默认设置发生了变化,也就是说,原来我们已经设置了
configure controlfile autobackup on;但是再重新使用rman进行spfile的恢复时,这个设置已经变成了off了。这种情况
在错误中不会提示,所以较难发现。出现这种情况是由于目前数据库只是通过rman的默认设置启动,而且处在nomount
状态。解决的方法是找到自动备份的路径,直接将路径告诉rman。
RMAN> restore spfile from '/u01/app/oracle/flash_recovery_area/ORCL/autobackup/2014_08_16
2> /o1_mf_s_855716497_9yyc01qb_.bkp
3> ';
Starting restore at 16-AUG-14
using channel ORA_DISK_1
channel ORA_DISK_1: restoring spfile from AUTOBACKUP /u01/app/oracle/flash_recovery_area/ORCL/autobackup/2014_08_16/o1_mf_s_855716497_9yyc01qb_.bkp
channel ORA_DISK_1: SPFILE restore from AUTOBACKUP complete
Finished restore at 16-AUG-14
我们把错误再次贴出来:
RMAN> restore spfile from autobackup;
Starting restore at 16-AUG-14
using channel ORA_DISK_1
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140816
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140815
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140814
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140813
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140812
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140811
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20140810
channel ORA_DISK_1: no AUTOBACKUP in 7 days found
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 08/16/2014 03:39:24
RMAN-06172: no AUTOBACKUP found or specified handle is not a valid copy or piece
(1)rman中没有配置configure controlfile autobackup on;
RMAN> show all;
RMAN configuration parameters for database with db_unique_name DUMMY are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO D ISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
这是自动备份控制文件和参数文件的开关,如果没有打开的话,那么就不可能产生自动备份。
(2)rman默认查找7天内的备份,如果7天之内没有发生自动备份,那么rman也将无法找到自动备份。
遇到这种情况一般有两种解决方式:
①restore spfile from autobackup until time 'SYSDATE-N ';
②restore spfile from autobackup maxdays N;
(3)第三种情况就是上篇试验中遇到的。由于autobackup的默认设置发生了变化,也就是说,原来我们已经设置了
configure controlfile autobackup on;但是再重新使用rman进行spfile的恢复时,这个设置已经变成了off了。这种情况
在错误中不会提示,所以较难发现。出现这种情况是由于目前数据库只是通过rman的默认设置启动,而且处在nomount
状态。解决的方法是找到自动备份的路径,直接将路径告诉rman。
RMAN> restore spfile from '/u01/app/oracle/flash_recovery_area/ORCL/autobackup/2014_08_16
2> /o1_mf_s_855716497_9yyc01qb_.bkp
3> ';
Starting restore at 16-AUG-14
using channel ORA_DISK_1
channel ORA_DISK_1: restoring spfile from AUTOBACKUP /u01/app/oracle/flash_recovery_area/ORCL/autobackup/2014_08_16/o1_mf_s_855716497_9yyc01qb_.bkp
channel ORA_DISK_1: SPFILE restore from AUTOBACKUP complete
Finished restore at 16-AUG-14
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29800581/viewspace-1252475/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29800581/viewspace-1252475/