沈阳凯文数据恢复中心 服务器数据恢复 各类数据库修复 小型机数据恢复 13386848847 024-31065488 地址:沈阳市和平区三好街同方广场A座10楼1012写字间

incremental backup恢复错误一例

incremental backup恢复错误一例错误现象:关闭standby数据库,将restore standby controlfile to '/u01/rmanbak/fordg/control01.ctl'恢复出来的控制文件覆盖现有的控制文件,重新启动后出现以下问题:Sat Mar 23 06:42:37 CST 2013alter database recover managed standby database disconnect from session using current logfileSat Mar 23 06:42:37 CST 2013Attempt to start background Managed Standby Recovery process (stdby)MRP0 started with pid=29, OS id=11519Sat Mar 23 06:42:37 CST 2013MRP0: Background Managed Standby Recovery process started (stdby)Sat Mar 23 06:42:37 CST 2013RFS[2]: Archived Log: '/u01/archivelog/stdby/arc_2_9373_789583539.dbf'RFS[2]: Archived Log: '/u01/archivelog/stdby/arc_2_9374_789583539.dbf'RFS[2]: Archived Log: '/u01/archivelog/stdby/arc_2_9375_789583539.dbf'RFS[2]: Archived Log: '/u01/archivelog/stdby/arc_2_9376_789583539.dbf'RFS[2]: Archived Log: '/u01/archivelog/stdby/arc_2_9377_789583539.dbf'RFS[2]: Archived Log: '/u01/archivelog/stdby/arc_2_9378_789583539.dbf'RFS[2]: Archived Log: '/u01/archivelog/stdby/arc_2_9379_789583539.dbf'RFS[2]: Archived Log: '/u01/archivelog/stdby/arc_2_9380_789583539.dbf'Sat Mar 23 06:42:41 CST 2013RFS[1]: Archived Log: '/u01/archivelog/stdby/arc_1_7751_789583539.dbf'Sat Mar 23 06:42:42 CST 2013RFS[2]: Archived Log: '/u01/archivelog/stdby/arc_2_9381_789583539.dbf'Sat Mar 23 06:42:42 CST 2013Managed Standby Recovery starting Real Time ApplySat Mar 23 06:42:42 CST 2013Errors in file /u01/app/oracle/admin/stdby/bdump/stdby_dbw0_11458.trc:ORA-01157: cannot identify/lock data file 24 - see DBWR trace fileORA-01110: data file 24: '+DATA/in_sz_data'ORA-17503: ksfdopn:2 Failed to open file +DATA/in_sz_dataORA-15001: diskgroup "DATA" does not exist or is not mountedORA-15077: could not locate ASM instance serving a required diskgroupORA-29701: unable to connect to Cluster ManagerSat Mar 23 06:42:42 CST 2013Errors in file /u01/app/oracle/admin/stdby/bdump/stdby_dbw0_11458.trc:ORA-01157: cannot identify/lock data file 25 - see DBWR trace fileORA-01110: data file 25: '/u01/oradata/stdby/in_sz_data'ORA-27037: unable to obtain file statusLinux-x86_64 Error: 2: No such file or directoryAdditional information: 3Sat Mar 23 06:42:42 CST 2013Errors in file /u01/app/oracle/admin/stdby/bdump/stdby_dbw0_11458.trc:ORA-01157: cannot identify/lock data file 26 - see DBWR trace fileORA-01110: data file 26: '/u01/oradata/stdby/in_sz_data.9154.810742355'ORA-27037: unable to obtain file statusLinux-x86_64 Error: 2: No such file or directoryAdditional information: 3Sat Mar 23 06:42:42 CST 2013Errors in file /u01/app/oracle/admin/stdby/bdump/stdby_dbw0_11458.trc:ORA-01157: cannot identify/lock data file 27 - see DBWR trace fileORA-01110: data file 27: '/u01/oradata/stdby/in_ac_data.9090.810742665'ORA-27037: unable to obtain file statusLinux-x86_64 Error: 2: No such file or directoryAdditional information: 3MRP0: Background Media Recovery terminated with error 1110Sat Mar 23 06:42:43 CST 2013Errors in file /u01/app/oracle/admin/stdby/bdump/stdby_mrp0_11519.trc:ORA-01110: data file 24: '+DATA/in_sz_data'ORA-01157: cannot identify/lock data file 24 - see DBWR trace fileORA-01110: data file 24: '+DATA/in_sz_data'Managed Standby Recovery not using Real Time ApplySat Mar 23 06:42:43 CST 2013Errors in file /u01/app/oracle/admin/stdby/bdump/stdby_mrp0_11519.trc:ORA-01110: data file 24: '+DATA/in_sz_data'ORA-01157: cannot identify/lock data file 24 - see DBWR trace fileORA-01110: data file 24: '+DATA/in_sz_data'Sat Mar 23 06:42:43 CST 2013MRP0: Background Media Recovery process shutdown (stdby)Sat Mar 23 06:42:43 CST 2013RFS[2]: Archived Log: '/u01/archivelog/stdby/arc_2_9382_789583539.dbf'分析:因为主库新建过数据文件,从主库恢复过来的控制文件中中包含了这些文件,而从库却没有这些文件。解决方法:执行创建文件:SQL> alter database create datafile '+DATA/in_sz_data' as '/u01/oradata/stdby/in_sz_data.312.789659222';Database altered.SQL> alter database create datafile '/u01/oradata/stdby/in_sz_data' as '/u01/oradata/stdby/in_sz_data.312.789659223';Database altered.SQL> alter database create datafile '/u01/oradata/stdby/in_sz_data.9154.810742355' as '/u01/oradata/stdby/in_sz_data.312.789659224';Database altered.SQL> alter database create datafile '/u01/oradata/stdby/in_ac_data.9090.810742665' as '/u01/oradata/stdby/in_ac_data.9090.810742665';再次执行恢复:RMAN> catalog start with '/u01/rmanbak/fordg/';searching for all files that match the pattern /u01/rmanbak/fordg/List of Files Unknown to the Database=====================================File Name: /u01/rmanbak/fordg/standby_STD_20130323_n9o57oao_1_1.bakFile Name: /u01/rmanbak/fordg/control01.ctlFile Name: /u01/rmanbak/fordg/standby_STD_20130323_nbo57oao_1_1.bakFile Name: /u01/rmanbak/fordg/standby_STD_20130323_nfo57p2c_1_1.bakFile Name: /u01/rmanbak/fordg/standby_STD_20130323_nco57oao_1_1.bakFile Name: /u01/rmanbak/fordg/standby_STD_20130323_nao57oao_1_1.bakFile Name: /u01/rmanbak/fordg/standby_STD_20130323_ngo57p2h_1_1.bakFile Name: /u01/rmanbak/fordg/standby_STD_20130323_ndo57ov7_1_1.bakFile Name: /u01/rmanbak/fordg/standby_STD_20130323_neo57p0b_1_1.bakDo you really want to catalog the above files (enter YES or NO)? yescataloging files...cataloging doneList of Cataloged Files=======================File Name: /u01/rmanbak/fordg/standby_STD_20130323_n9o57oao_1_1.bakFile Name: /u01/rmanbak/fordg/control01.ctlFile Name: /u01/rmanbak/fordg/standby_STD_20130323_nbo57oao_1_1.bakFile Name: /u01/rmanbak/fordg/standby_STD_20130323_nfo57p2c_1_1.bakFile Name: /u01/rmanbak/fordg/standby_STD_20130323_nco57oao_1_1.bakFile Name: /u01/rmanbak/fordg/standby_STD_20130323_nao57oao_1_1.bakFile Name: /u01/rmanbak/fordg/standby_STD_20130323_ngo57p2h_1_1.bakFile Name: /u01/rmanbak/fordg/standby_STD_20130323_ndo57ov7_1_1.bakFile Name: /u01/rmanbak/fordg/standby_STD_20130323_neo57p0b_1_1.bakRMAN>RMAN> RMAN> run {  allocate channel dsk0 type disk;allocate channel dsk1 type disk;allocate channel dsk2 type disk;restore standby controlfile to '/u01/rmanbak/fordg/control01.ctl';recover database noredo;}2> 3> 4> 5> 6> 7>allocated channel: dsk0channel dsk0: sid=1481 devtype=DISKallocated channel: dsk1channel dsk1: sid=1480 devtype=DISKallocated channel: dsk2channel dsk2: sid=1479 devtype=DISKStarting restore at 28-MAR-13channel dsk0: starting datafile backupset restorechannel dsk0: restoring control fileoutput filename=/u01/rmanbak/fordg/control01.ctlchannel dsk0: reading from backup piece /u01/rmanbak/fordg/standby_STD_20130323_nfo57p2c_1_1.bakchannel dsk0: restored backup piece 1piece handle=/u01/rmanbak/fordg/standby_STD_20130323_nfo57p2c_1_1.bak tag=FOR STANDBYchannel dsk0: restore complete, elapsed time: 00:00:05Finished restore at 28-MAR-13Starting recover at 28-MAR-13channel dsk0: starting incremental datafile backupset restorechannel dsk0: specifying datafile(s) to restore from backup setdestination for restore of datafile 00024: /u01/oradata/stdby/in_sz_data.312.789659222destination for restore of datafile 00025: /u01/oradata/stdby/in_sz_data.312.789659223destination for restore of datafile 00026: /u01/oradata/stdby/in_sz_data.312.789659224destination for restore of datafile 00027: /u01/oradata/stdby/in_ac_data.9090.810742665channel dsk0: reading from backup piece /u01/rmanbak/inc2_STD_n2o572go_1_1released channel: dsk0released channel: dsk1released channel: dsk2RMAN-00571: ===========================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============RMAN-00571: ===========================================================RMAN-03002: failure of recover command at 03/28/2013 15:37:14ORA-19870: error reading backup piece /u01/rmanbak/inc2_STD_n2o572go_1_1ORA-19505: failed to identify file "/u01/rmanbak/inc2_STD_n2o572go_1_1"ORA-27037: unable to obtain file statusLinux-x86_64 Error: 2: No such file or directoryAdditional information: 3分析:通过WINDOWS系统FTP上传下载后文件发生了变化,改用NFS传输后恢复正常顺带下NFS的设置服务器端:[root@dgserver stdby]# vi /etc/exports[1]+  Stopped                 vi /etc/exports[root@dgserver stdby]# vi /etc/exports[root@dgserver stdby]# /etc/rc.d/init.d/portmap startStarting portmap:                                          [  OK  ][root@dgserver stdby]# /etc/rc.d/init.d/nfs startStarting NFS services:                                     [  OK  ]Starting NFS quotas:                                       [  OK  ]Starting NFS daemon:                                       [  OK  ]Starting NFS mountd:                                       [  OK  ][root@dgserver stdby]# exportfs -rvexporting *:/u01/rmanbak[root@dgserver stdby]#客户端[root@oracle1 ~]# showmount -e 192.168.13.109Export list for 192.168.13.109:/u01/rmanbak *[root@oracle1 ~]#RMAN> run {  allocate channel dsk0 type disk;allocate channel dsk1 type disk;allocate channel dsk2 type disk;restore standby controlfile to '/u01/rmanbak/fordg/control01.ctl';recover database noredo;}2> 3> 4> 5> 6> 7>allocated channel: dsk0channel dsk0: sid=1481 devtype=DISKallocated channel: dsk1channel dsk1: sid=1480 devtype=DISKallocated channel: dsk2channel dsk2: sid=1479 devtype=DISKStarting restore at 28-MAR-13control file is already restored to file /u01/rmanbak/fordg/control01.ctlrestore not done; all files readonly, offline, or already restoredFinished restore at 28-MAR-13Starting recover at 28-MAR-13channel dsk0: starting incremental datafile backupset restorechannel dsk0: specifying datafile(s) to restore from backup setdestination for restore of datafile 00024: /u01/oradata/stdby/in_sz_data.312.789659222destination for restore of datafile 00025: /u01/oradata/stdby/in_sz_data.312.789659223destination for restore of datafile 00026: /u01/oradata/stdby/in_sz_data.312.789659224destination for restore of datafile 00027: /u01/oradata/stdby/in_ac_data.9090.810742665channel dsk0: reading from backup piece /u01/rmanbak/inc2_STD_n2o572go_1_1released channel: dsk0released channel: dsk1released channel: dsk2RMAN-00571: ===========================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============RMAN-00571: ===========================================================RMAN-03002: failure of recover command at 03/28/2013 16:32:26ORA-19870: error reading backup piece /u01/rmanbak/inc2_STD_n2o572go_1_1ORA-19573: cannot obtain exclusive enqueue for datafile 26查询该FILESQL> select name from v$datafile where file#=26;NAME--------------------------------------------------------------------------------/u01/oradata/stdby/in_sz_data.312.789659224SQL>分析:由于是MOUNT STANDBY方式启动的,决定重启到普通MOUNT状态SQL> shutdown immediate;ORACLE instance shut down.SQL> startup mount;ORACLE instance started.Total System Global Area 1.9327E+10 bytesFixed Size                  2130592 bytesVariable Size            4362079584 bytesDatabase Buffers         1.4948E+10 bytesRedo Buffers               14643200 bytesDatabase mounted.SQL>[oracle@dgserver ~]$ rman target /Recovery Manager: Release 10.2.0.5.0 - Production on Thu Mar 28 16:49:28 2013Copyright (c) 1982, 2007, Oracle.  All rights reserved.connected to target database: STD (DBID=1656746419, not open)RMAN> run {  allocate channel dsk0 type disk;allocate channel dsk1 type disk;allocate channel dsk2 type disk;restore standby controlfile to '/u01/rmanbak/fordg/control01.ctl';recover database noredo;}2> 3> 4> 5> 6> 7>using target database control file instead of recovery catalogallocated channel: dsk0channel dsk0: sid=1481 devtype=DISKallocated channel: dsk1channel dsk1: sid=1480 devtype=DISKallocated channel: dsk2channel dsk2: sid=1479 devtype=DISKStarting restore at 28-MAR-13control file is already restored to file /u01/rmanbak/fordg/control01.ctlrestore not done; all files readonly, offline, or already restoredFinished restore at 28-MAR-13Starting recover at 28-MAR-13channel dsk0: starting incremental datafile backupset restorechannel dsk0: specifying datafile(s) to restore from backup setdestination for restore of datafile 00024: /u01/oradata/stdby/in_sz_data.312.789659222destination for restore of datafile 00025: /u01/oradata/stdby/in_sz_data.312.789659223destination for restore of datafile 00026: /u01/oradata/stdby/in_sz_data.312.789659224destination for restore of datafile 00027: /u01/oradata/stdby/in_ac_data.9090.810742665channel dsk0: reading from backup piece /u01/rmanbak/inc2_STD_n2o572go_1_1channel dsk0: restored backup piece 1piece handle=/u01/rmanbak/inc2_STD_n2o572go_1_1 tag=INC2channel dsk0: restore complete, elapsed time: 00:24:27channel dsk0: starting incremental datafile backupset restorechannel dsk0: specifying datafile(s) to restore from backup setdestination for restore of datafile 00024: /u01/oradata/stdby/in_sz_data.312.789659222destination for restore of datafile 00025: /u01/oradata/stdby/in_sz_data.312.789659223channel dsk0: reading from backup piece /u01/rmanbak/fordg/standby_STD_20130323_nbo57oao_1_1.bakchannel dsk1: starting incremental datafile backupset restorechannel dsk1: specifying datafile(s) to restore from backup setdestination for restore of datafile 00026: /u01/oradata/stdby/in_sz_data.312.789659224channel dsk1: reading from backup piece /u01/rmanbak/fordg/standby_STD_20130323_nco57oao_1_1.bakchannel dsk2: starting incremental datafile backupset restorechannel dsk2: specifying datafile(s) to restore from backup setdestination for restore of datafile 00027: /u01/oradata/stdby/in_ac_data.9090.810742665channel dsk2: reading from backup piece /u01/rmanbak/fordg/standby_STD_20130323_neo57p0b_1_1.bakchannel dsk0: restored backup piece 1piece handle=/u01/rmanbak/fordg/standby_STD_20130323_nbo57oao_1_1.bak tag=FOR STANDBYchannel dsk0: restore complete, elapsed time: 00:00:03channel dsk1: restored backup piece 1piece handle=/u01/rmanbak/fordg/standby_STD_20130323_nco57oao_1_1.bak tag=FOR STANDBYchannel dsk1: restore complete, elapsed time: 00:00:10channel dsk2: restored backup piece 1piece handle=/u01/rmanbak/fordg/standby_STD_20130323_neo57p0b_1_1.bak tag=FOR STANDBYchannel dsk2: restore complete, elapsed time: 00:10:35Finished recover at 28-MAR-13released channel: dsk0released channel: dsk1released channel: dsk2RMAN>