Oracle 基于 RMAN 的不完全恢复(incomplete recovery by RMAN)(五)

2014-11-24 17:54:20 · 作者: · 浏览: 10
30
archived log file name=/u02/DB/oradb/arch/2013_07_05/o1_mf_1_31_8xdcg1wc_.arc thread=1 sequence=31 --->此时也是apply到了31
media recovery complete, elapsed time: 00:00:07 --->我们指定了sequence为32(但不包含sequence 32)
Finished recover at 05-JUL-13


database opened


RMAN> host;


Recovery Manager complete.


-->验证结果,记录Winson已经被恢复
[oracle@node1 ~]$ ./query_t2.sh


ID DT
---------- --------------------
Robinson 20130705 10:08:15
Jackson 20130705 10:11:27
Winson 20130705 10:15:47


d、恢复到最近时刻
-->此处的恢复到最近(新)时刻,也就是我们希望恢复最后的记录"Completed"
-->通常情况下,我们恢复到故障点为完全恢复,此时也可以说是做完全恢复
-->但是由于我们对数据库作了不完全恢复,因此此时即使是做完全恢复,仍然为不完全恢复,见下面的示例
RMAN> shutdown immediate;
RMAN> startup mount;
RMAN> reset database to incarnation 2;
RMAN> run{
2> restore database;
3> recover database;
4> alter database open;}


Starting restore at 05-JUL-13
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=24 device type=DISK
...........................
channel ORA_DISK_1: restore complete, elapsed time: 00:00:45
Finished restore at 05-JUL-13


Starting recover at 05-JUL-13
using channel ORA_DISK_1


starting media recovery


archived log for thread 1 with sequence 27 is already on disk as file /u02/DB/oradb/arch/2013_07_05/o1_mf_1_27_8xd9c0f0_.arc
......................
archived log for thread 1 with sequence 33 is already on disk as file /u02/DB/oradb/arch/2013_07_05/o1_mf_1_33_8xddbvsc_.arc
archived log file name=/u02/DB/oradb/arch/2013_07_05/o1_mf_1_27_8xd9c0f0_.arc thread=1 sequence=27
archived log file name=/u02/DB/oradb/arch/2013_07_05/o1_mf_1_28_8xdbcrht_.arc thread=1 sequence=28
archived log file name=/u02/DB/oradb/arch/2013_07_05/o1_mf_1_29_8xdbnqx9_.arc thread=1 sequence=29
archived log file name=/u02/DB/oradb/arch/2013_07_05/o1_mf_1_30_8xdbv338_.arc thread=1 sequence=30
archived log file name=/u02/DB/oradb/arch/2013_07_05/o1_mf_1_31_8xdcg1wc_.arc thread=1 sequence=31
archived log file name=/u02/DB/oradb/arch/2013_07_05/o1_mf_1_32_8xdcl0rx_.arc thread=1 sequence=32
archived log file name=/u02/DB/oradb/arch/2013_07_05/o1_mf_1_33_8xddbvsc_.arc thread=1 sequence=33
unable to find archived log
archived log thread=1 sequence=34
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 07/05/2013 11:27:48
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 34 and starting SCN of 1367222


--可以看到,数据库被apply到了sequence为33的归档日志,现在数据库寻找sequence为34为SCN为1367222的归档日志
--细心的朋友可能会发现,我们之前仅仅归档到32,那sequence为33的归档日志从而而来呢,应该是系统自动产生了一次归档
--但这里我的归档日志大小为50MB,因此也不可能是由于redo log满而产生归档


--查看alert日志
[oracle@node1 trace]$ tail -1280 alert_oradb.log | more
Media Recovery Log /u02/DB/oradb/arch/2013_07_05/o1_mf_1_29_8xdbnqx9_.arc
Fri Jul 05 10:35:41 2013
ORA-279 signalled during: alter database recover logfile '/u02/DB/oradb/arch/2013_07_05/o1_mf_1_29_8xdbnqx9_.arc'...
alter database recover logfile '/u02/DB/oradb/arch/2013_07_05/o1_mf_1_30_8xdbv338_.arc'
Media Recovery Log /u02/DB/oradb/arch/2013_07_05/o1_mf_1_30_8xdbv338_.arc
Incomplete Recovery applied until change 1365529 time 07/05/2013 10:09:59
Media Recovery Complete (oradb) --->提示介质恢复完成
Comple