1,在MASTER上查找最近的备份集
注:NB_ORA_SERV=“这个是NBU的MASTER的主机名”
NB_ORA_CLIENT=“这个是CLIENT的主机名”
bplist -S master -C oracle10 -t 4 -R -l /
[root@master ~]# bplist -S master -C oracle10 -t 4 -R -l /
-rw-rw---- oracle oinstall 7340032 Apr 26 13:27 /c-1170389824-20120426-07 控制文件备份集
-rw-rw---- oracle oinstall 2883584 Apr 26 13:26 /al_36_1_781622767 归档文件备份集
-rw-rw---- oracle oinstall 262144 Apr 26 13:26 /al_37_1_781622767 归档文件备份集
-rw-rw---- oracle oinstall 7340032 Apr 26 13:25 /c-1170389824-20120426-06 控制文件备份集
-rw-rw---- oracle oinstall 385351680 Apr 26 13:23 /bk_33_1_781622630 数据文件备份集
-rw-rw---- oracle oinstall 292552704 Apr 26 13:23 /bk_34_1_781622630 数据文件备份集
2,进入ORACLE所在的客户端的RMAN中
RUN{
ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE';
SEND 'NB_ORA_SERV=master,NB_ORA_CLIENT=oracle10';
restore controlfile from 'c-1170389824-20120426-07'; 找时间最后的一个控制文件备份集,在1中有显示
RELEASE CHANNEL ch00;
}
3,进入ORACLE中
SQL> alter database mount;
Database altered.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
4,加RESETLOGS打开时说控制文件的和数据文件不同步,太旧了。
SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01152: file 1 was not restored from a sufficiently old backup
ORA-01110: data file 1: '/u01/app/oracle/oradata/wislon/system01.dbf'
5,用using backup controlfile来把数据文件中的SCN同步到控制文件
SQL> recover database using backup controlfile;
ORA-00279: change 482909 generated at 04/26/2012 13:26:07 needed for thread 1
ORA-00289: suggestion :/u01/app/oracle/flash_recovery_area/WISLON/archivelog/2012_04_26/o1_mf_1_14_%u_.arc
ORA-00280: change 482909 for thread 1 is in sequence #14
Specify log: {=suggested | filename | AUTO | CANCEL}
CANCEL
6,进入RMAN来恢复归档文件
RMAN> list backup of archivelog all;
List of Backup Sets
===================
BS Key Size Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
24 256.00K SBT_TAPE 00:00:32 26-APR-12
BP Key: 24 Status: AVAILABLE Compressed: NO Tag: TAG20120426T132607
Handle: al_37_1_781622767 Media:
List of Archived Logs in backup set 24
Thrd Seq Low SCN Low Time Next SCN Next Time
---- ------- ---------- --------- ---------- ---------
1 13 482865 26-APR-12 482882 26-APR-12
BS Key Size Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
25 2.75M SBT_TAPE 00:00:52 26-APR-12
BP Key: 25 Status: AVAILABLE Compressed: NO Tag: TAG20120426T132607
Handle: al_36_1_781622767 Media:
List of Archived Logs in backup set 25
Thrd Seq Low SCN Low Time Next SCN Next Time
---- ------- ---------- --------- ---------- ---------
1 12 477991 26-APR-12 482865 26-APR-12
RUN{
ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE';
SEND 'NB_ORA_SERV=master,NB_ORA_CLIENT=oracle10';
restore archivelog sequence 12 thread 1;
restore archivelog sequence 13 thread 1;
release channel ch00;
}
7进入数据库开始用归档来同步CONTROLFILE.
SQL> recover database using backup controlfile;
ORA-00279: change 12286827844770 generated at 04/12/2012 00:21:54 needed for
thread 1
ORA-00289: suggestion : /u01/oracle/oradata/xifenfei/archive/1_4.dbf
ORA-00280: change 12286827844770 for thread 1 is in sequence #4
Specify log: {=suggested | filename | AUTO | CANCEL}
auto
ORA-00279: change 12286827844772 generated at 04/12/2012 00:21:55 needed for
thread 1
ORA-00289: suggestion : /u01/oracle/oradata/xifenfei/archive/1_5.dbf
ORA-00280: change 12286827844772 for thread 1 is in sequence #5
ORA-00278: log file '/u01/oracle/oradata/xifenfei/archive/1_4.dbf' no longer
needed for this recovery
ORA-00279: change 12286827844776 generated at 04/12/2012 00:21:58 needed for
thread 1
ORA-00289: suggestion : /u01/oracle/oradata/xifenfei/archive/1_6.dbf
ORA-00280: change 12286827844776 for thread 1 is in sequence #6
ORA-00278: log file '/u01/oracle/oradata/xifenfei/archive/1_5.dbf' no longer
needed for this recovery
ORA-00308: cannot open archived log
'/u01/oracle/oradata/xifenfei/archive/1_6.dbf'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
8,有一个归档没有找到,用REDO来同步。
SQL> recover database using backup controlfile;
ORA-00279: change 12286827844776 generated at 04/12/2012 00:21:58 needed for
thread 1
ORA-00289: suggestion : /u01/oracle/oradata/xifenfei/archive/1_6.dbf
ORA-00280: change 12286827844776 for thread 1 is in sequence #6
Specify log: {=suggested | filename | AUTO | CANCEL}
/u01/oracle/oradata/xifenfei/redo02.log
ORA-00310: archived log contains sequence 3; sequence 6 required
ORA-00334: archived log: '/u01/oracle/oradata/xifenfei/redo02.log'
SQL> recover database using backup controlfile;
ORA-00279: change 12286827844776 generated at 04/12/2012 00:21:58 needed for
thread 1
ORA-00289: suggestion : /u01/oracle/oradata/xifenfei/archive/1_6.dbf
ORA-00280: change 12286827844776 for thread 1 is in sequence #6
Specify log: {=suggested | filename | AUTO | CANCEL}
/u01/oracle/oradata/xifenfei/redo03.log
Log applied.
Media recovery complete.
9再次打开数据库,还是让RESETLOGS
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
--提示需要resetlogs
10重建控制文件,就可以以NORESETLOGS打开了
SQL> alter database backup controlfile to trace as '/tmp/1.txt';
Database altered.
SQL> shutdown immediate;
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
SQL> STARTUP NOMOUNT
Total System Global Area 353441008 bytes
Fixed Size 451824 bytes
Variable Size 184549376 bytes
Database Buffers 167772160 bytes
Redo Buffers 667648 bytes
--输入生成的脚本中的代码重建控制文件
--自动启动到mount状态
11,打开数据库open成功
SQL> alter database open;
Database altered.
(原创,转载请说明出处)恢复中以NORESETLGOG方式打开数据库参考http://www.xifenfei.com/2994.html
[@more@]来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23862439/viewspace-1058031/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/23862439/viewspace-1058031/