读书人

记一次Oracle 生产库复原归档日志经历

发布时间: 2012-07-03 13:37:43 作者: rapoo

记一次Oracle 生产库还原归档日志经历(原创)

中午刚去吃饭,就接到同事电话说急着要恢复生产库上的归档日志。系统环境是10.2.0.5,RAC,归档日志在node1上建立了nfs共享,而node2上没有建立nfs共享。另有一套查询库,通过DSG的同步软件将数据从生产库上同步到查询库上。软件原理是通过传说分析归档日志然后加以应用,总体感觉有点像DG。由于生产库上使用的是增量备份,每天都进行备份。且备份完后会自动删除归档日志。恢复生产库的归档日志的原因是,同步到查询库时失败(采用DSG的备份软件时,当遇到大量DML操作时经常遇到同步失败的情况),需要重新同步,但归档日志已经被删除,故需要还原归档日志。查询库昨日17:00后的数据同步失败,故需要还原从昨日至今的归档日志。系统环境交代到这,下面是具体的实施步骤。
在node1上进行操作

$ pwd
/arch_log/restore

root@fjlt_zgsc_db01:/#mount
? node?????? mounted??????? mounted over??? vfs?????? date??????? options?????
-------- ---------------? ---------------? ------ ------------ ---------------
???????? /dev/hd4???????? /??????????????? jfs2?? Apr 21 19:42 rw,log=/dev/hd8
???????? /dev/hd2???????? /usr???????????? jfs2?? Apr 21 19:42 rw,log=/dev/hd8
???????? /dev/hd9var????? /var???????????? jfs2?? Apr 21 19:42 rw,log=/dev/hd8
???????? /dev/hd3???????? /tmp???????????? jfs2?? Apr 21 19:42 rw,log=/dev/hd8
???????? /dev/hd1???????? /home??????????? jfs2?? Apr 21 19:43 rw,log=/dev/hd8
???????? /dev/hd11admin?? /admin?????????? jfs2?? Apr 21 19:43 rw,log=/dev/hd8
???????? /proc??????????? /proc??????????? procfs Apr 21 19:43 rw?????????????
???????? /dev/hd10opt???? /opt???????????? jfs2?? Apr 21 19:43 rw,log=/dev/hd8
???????? /dev/livedump??? /var/adm/ras/livedump jfs2?? Apr 21 19:43 rw,log=/dev/hd8
???????? /dev/lv_oracle10g /oracle10g?????? jfs2?? Apr 21 19:43 rw,log=/dev/hd8
???????? /dev/lv_zs_arch_01 /arch_log??????? jfs2?? Apr 21 19:43 rw,log=/dev/loglv01
???????? /dev/lv_zs_db2bk_01 /rman_db2_bk???? jfs2?? Apr 21 19:43 rw,log=/dev/loglv01
???????? /dev/lv_zs_bck_01 /rman_data?????? jfs2?? Apr 21 19:43 rw,log=/dev/loglv00
???????? /dev/lv_cdump??? /oracle10g/app/oracle/admin/zgscdb/cdump jfs2?? Nov 16 12:05 rw,log=/dev/loglv02
???????? /dev/lv_dsg1???? /dsg1??????????? jfs2?? Nov 16 12:10 rw,log=/dev/loglv02
fjlt_zgsc_db02 /arch_log/zgsc_db02_arch /arch_log/zgsc_db02_arch nfs3?? Jan 16 16:26?

$ df -g
Filesystem??? GB blocks????? Free %Used??? Iused %Iused Mounted on
/dev/hd4????????? 10.00????? 9.56??? 5%??? 12767???? 1% /
/dev/hd2????????? 10.00????? 6.75?? 33%??? 62385???? 4% /usr
/dev/hd9var?????? 10.00????? 9.23??? 8%??? 13956???? 1% /var
/dev/hd3????????? 10.00????? 9.09?? 10%???? 3512???? 1% /tmp
/dev/hd1????????? 10.00????? 8.99?? 11%???? 8013???? 1% /home
/dev/hd11admin????? 0.25????? 0.25??? 1%??????? 5???? 1% /admin
/proc???????????????? -???????? -??? -???????? -???? -? /proc
/dev/hd10opt????? 10.00????? 9.73??? 3%??? 10356???? 1% /opt
/dev/livedump????? 0.25????? 0.25??? 1%??????? 8???? 1% /var/adm/ras/livedump
/dev/lv_oracle10g???? 30.00???? 11.84?? 61%?? 215252???? 7% /oracle10g
/dev/lv_zs_arch_01??? 997.00??? 989.75??? 1%?????? 32???? 1% /arch_log
/dev/lv_zs_db2bk_01??? 998.00??? 432.63?? 57%????? 167???? 1% /rman_db2_bk
/dev/lv_zs_bck_01?? 2992.00?? 1836.57?? 39%????? 224???? 1% /rman_data
/dev/lv_cdump??? 200.00??? 199.97??? 1%?????? 15???? 1% /oracle10g/app/oracle/admin/zgscdb/cdump
/dev/lv_dsg1????? 49.75???? 43.97?? 12%???? 8831???? 1% /dsg1
fjlt_zgsc_db02:/arch_log/zgsc_db02_arch??? 997.00??? 971.00??? 3%?????? 34???? 1% /arch_log/zgsc_db02_arch

/arch_log挂载点下空余空间接近1T,目标将归档日志还原到/arch_log/restore下

第一反应,通过v$archived_log找到17:00以后的归档日志序列号

select sequence#,completion_time from v$archived_log where completion_time > to_date('2012-02-15','hh24:mi:ss');

查询得出从sequence#为16147开始的归档日志为2012-02-17 17:00以后的归档日志

执行

$ rman target /
Recovery Manager: Release 10.2.0.5.0 - Production on Thu Feb 16 13:07:12 2012
Copyright (c) 1982, 2007, Oracle.? All rights reserved.
connected to target database: ZGSCDB (DBID=3629726729)

RMAN> run{
2> allocate channel c1 type disk;
3> allocate channel c2 type disk;
4> allocate channel c3 type disk;
5> allocate channel c4 type disk;
6> set archivelog destination to '/arch_log/restore';
7> restore archivelog? from logseq 16147;
8> release channel c1 ;ype disk
9> release channel c2;
10> release channel c3;
11> release channel c4;
12> }

using target database control file instead of recovery catalog
allocated channel: c1
channel c1: sid=4834 instance=zgscdb1 devtype=DISK

allocated channel: c2
channel c2: sid=5333 instance=zgscdb1 devtype=DISK

allocated channel: c3
channel c3: sid=4879 instance=zgscdb1 devtype=DISK

allocated channel: c4
channel c4: sid=5317 instance=zgscdb1 devtype=DISK

executing command: SET ARCHIVELOG DESTINATION

Starting restore at 16-FEB-12
released channel: c1
released channel: c2
released channel: c3
released channel: c4
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 02/16/2012 13:10:53
RMAN-20242: specification does not match any archive log in the recovery catalog

RMAN> list archivelog from logseq 16147;

没有任何输出,郁闷。。。。。。。。。
RMAN> list backup of archivelog all;

List of Backup Sets
===================

BS Key? Size?????? Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
5115??? 169.62M??? DISK??????? 00:00:09???? 12-FEB-12?????
??????? BP Key: 12219?? Status: AVAILABLE? Compressed: NO? Tag: TAG20120212T014331
??????? Piece Name: /rman_data/zgscdb_rman/ZGSCDB_arch_20120212_0tn33hqa_s5149_p1_C1

? List of Archived Logs in backup set 5115
? Thrd Seq???? Low SCN??? Low Time? Next SCN?? Next Time
? ---- ------- ---------- --------- ---------- ---------
? 1??? 13769?? 12663219622525 11-FEB-12 12663220068092 11-FEB-12
? 1??? 13770?? 12663220068092 11-FEB-12 12663220426071 11-FEB-12
? 1??? 13771?? 12663220426071 11-FEB-12 12663220887716 11-FEB-12
? 1??? 13772?? 12663220887716 11-FEB-12 12663222831310 12-FEB-12

省略部分输出

?List of Archived Logs in backup set 5197
? Thrd Seq???? Low SCN??? Low Time? Next SCN?? Next Time
? ---- ------- ---------- --------- ---------- ---------
? 2??? 16176?? 12670019198216 15-FEB-12 12670023192712 15-FEB-12
? 2??? 16177?? 12670023192712 15-FEB-12 12670025565356 16-FEB-12
? 2??? 16178?? 12670025565356 16-FEB-12 12670026143737 16-FEB-12
? 2??? 16179?? 12670026143737 16-FEB-12 12670026897385 16-FEB-12
? 2??? 16180?? 12670026897385 16-FEB-12 12670027305649 16-FEB-12
? 2??? 16181?? 12670027305649 16-FEB-12 12670027693987 16-FEB-12

BS Key? Size?????? Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
5198??? 13.00G???? DISK??????? 00:01:07???? 16-FEB-12?????


?List of Archived Logs in backup set 5193
? Thrd Seq???? Low SCN??? Low Time? Next SCN?? Next Time
? ---- ------- ---------- --------- ---------- ---------
? 2??? 16148?? 12670010177819 15-FEB-12 12670011207570 15-FEB-12
? 2??? 16149?? 12670011207570 15-FEB-12 12670012283915 15-FEB-12
? 2??? 16150?? 12670012283915 15-FEB-12 12670012754302 15-FEB-12
? 2??? 16151?? 12670012754302 15-FEB-12 12670012969887 15-FEB-12
? 2??? 16152?? 12670012969887 15-FEB-12 12670013212670 15-FEB-12
? 2??? 16153?? 12670013212670 15-FEB-12 12670013780868 15-FEB-12
? 2??? 16154?? 12670013780868 15-FEB-12 12670013976009 15-FEB-12
? 2??? 16155?? 12670013976009 15-FEB-12 12670015183858 15-FEB-12
? 2??? 16156?? 12670015183858 15-FEB-12 12670015441965 15-FEB-12
? 2??? 16157?? 12670015441965 15-FEB-12 12670015599451 15-FEB-12
? 2??? 16158?? 12670015599451 15-FEB-12 12670015722094 15-FEB-12
? 2??? 16159?? 12670015722094 15-FEB-12 12670015785593 15-FEB-12
? 2??? 16160?? 12670015785593 15-FEB-12 12670015847887 15-FEB-12
? 2??? 16161?? 12670015847887 15-FEB-12 12670016000750 15-FEB-12

? Backup Set Copy #1 of backup set 5193
? Device Type Elapsed Time Completion Time Compressed Tag
? ----------- ------------ --------------- ---------- ---
? DISK??????? 00:03:55???? 16-FEB-12?????? NO???????? TAG20120216T010430

??? List of Backup Pieces for backup set 5193 Copy #1
??? BP Key? Pc# Status????? Piece Name
??? ------- --- ----------- ----------
??? 12560?? 1?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_39n3e111_s5225_p1_C1
??? 12561?? 2?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_39n3e111_s5225_p2_C1
??? 12562?? 3?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_39n3e111_s5225_p3_C1


? List of Archived Logs in backup set 5198
? Thrd Seq???? Low SCN??? Low Time? Next SCN?? Next Time
? ---- ------- ---------- --------- ---------- ---------
? 2??? 16134?? 12668052207072 15-FEB-12 12668052339209 15-FEB-12
? 2??? 16135?? 12668052339209 15-FEB-12 12668052456743 15-FEB-12
? 2??? 16136?? 12668052456743 15-FEB-12 12668052579080 15-FEB-12
? 2??? 16137?? 12668052579080 15-FEB-12 12668052695760 15-FEB-12
? 2??? 16138?? 12668052695760 15-FEB-12 12668056672468 15-FEB-12
? 2??? 16139?? 12668056672468 15-FEB-12 12668060445745 15-FEB-12
? 2??? 16140?? 12668060445745 15-FEB-12 12668062444755 15-FEB-12
? 2??? 16141?? 12668062444755 15-FEB-12 12668660576479 15-FEB-12
? 2??? 16142?? 12668660576479 15-FEB-12 12668660718987 15-FEB-12
? 2??? 16143?? 12668660718987 15-FEB-12 12668660871830 15-FEB-12
? 2??? 16144?? 12668660871830 15-FEB-12 12668661303733 15-FEB-12
? 2??? 16145?? 12668661303733 15-FEB-12 12668661585953 15-FEB-12
? 2??? 16146?? 12668661585953 15-FEB-12 12668662079217 15-FEB-12
? 2??? 16147?? 12668662079217 15-FEB-12 12670010177819 15-FEB-12

? Backup Set Copy #1 of backup set 5198
? Device Type Elapsed Time Completion Time Compressed Tag
? ----------- ------------ --------------- ---------- ---
? DISK??????? 00:01:07???? 16-FEB-12?????? NO???????? TAG20120216T010430

??? List of Backup Pieces for backup set 5198 Copy #1
??? BP Key? Pc# Status????? Piece Name
??? ------- --- ----------- ----------
??? 12573?? 1?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_3an3e18j_s5226_p1_C1
??? 12574?? 2?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_3an3e18j_s5226_p2_C1
??? 12575?? 3?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_3an3e18j_s5226_p3_C1

? List of Archived Logs in backup set 5195
? Thrd Seq???? Low SCN??? Low Time? Next SCN?? Next Time
? ---- ------- ---------- --------- ---------- ---------
? 2??? 16162?? 12670016000750 15-FEB-12 12670016088204 15-FEB-12
? 2??? 16163?? 12670016088204 15-FEB-12 12670016308969 15-FEB-12
? 2??? 16164?? 12670016308969 15-FEB-12 12670016653192 15-FEB-12
? 2??? 16165?? 12670016653192 15-FEB-12 12670017027396 15-FEB-12
? 2??? 16166?? 12670017027396 15-FEB-12 12670017225549 15-FEB-12
? 2??? 16167?? 12670017225549 15-FEB-12 12670017317060 15-FEB-12
? 2??? 16168?? 12670017317060 15-FEB-12 12670017393441 15-FEB-12
? 2??? 16169?? 12670017393441 15-FEB-12 12670017462567 15-FEB-12
? 2??? 16170?? 12670017462567 15-FEB-12 12670017541021 15-FEB-12
? 2??? 16171?? 12670017541021 15-FEB-12 12670017654244 15-FEB-12
? 2??? 16172?? 12670017654244 15-FEB-12 12670017735163 15-FEB-12
? 2??? 16173?? 12670017735163 15-FEB-12 12670017811611 15-FEB-12
? 2??? 16174?? 12670017811611 15-FEB-12 12670017888323 15-FEB-12
? 2??? 16175?? 12670017888323 15-FEB-12 12670019198216 15-FEB-12

? Backup Set Copy #1 of backup set 5195
? Device Type Elapsed Time Completion Time Compressed Tag
? ----------- ------------ --------------- ---------- ---
? DISK??????? 00:03:56???? 16-FEB-12?????? NO???????? TAG20120216T010430

??? List of Backup Pieces for backup set 5195 Copy #1
??? BP Key? Pc# Status????? Piece Name
??? ------- --- ----------- ----------
??? 12566?? 1?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_38n3e111_s5224_p1_C1
??? 12567?? 2?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_38n3e111_s5224_p2_C1
??? 12568?? 3?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_38n3e111_s5224_p3_C1

可以看到从日志序列号为16147到16181的归档日志备份全部存。那为什么执行list backup of archivelog from logseq 16147;时没有输出呢?

查了下rman的list语法,执行如下命令

RMAN>list backup of archivelog from? time? "to_date('2012-02-15 17:00:00','yyyy-mm-dd hh24:mi:ss')";

List of Backup Sets
===================

BS Key? Size?????? Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
5189??? 287.12M??? DISK??????? 00:00:04???? 16-FEB-12?????
??????? BP Key: 12552?? Status: AVAILABLE? Compressed: NO? Tag: TAG20120216T010430
??????? Piece Name: /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_37n3e111_s5223_p1_C1

? List of Archived Logs in backup set 5189
? Thrd Seq???? Low SCN??? Low Time? Next SCN?? Next Time
? ---- ------- ---------- --------- ---------- ---------
? 1??? 14153?? 12670027303388 16-FEB-12 12670027694268 16-FEB-12

BS Key? Size?????? Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
5190??? 9.98G????? DISK??????? 00:02:45???? 16-FEB-12?????

? List of Archived Logs in backup set 5190
? Thrd Seq???? Low SCN??? Low Time? Next SCN?? Next Time
? ---- ------- ---------- --------- ---------- ---------
? 1??? 14131?? 12668662080221 15-FEB-12 12670012207947 15-FEB-12
? 1??? 14132?? 12670012207947 15-FEB-12 12670012971251 15-FEB-12
? 1??? 14133?? 12670012971251 15-FEB-12 12670013978444 15-FEB-12
? 1??? 14134?? 12670013978444 15-FEB-12 12670015440149 15-FEB-12
? 1??? 14135?? 12670015440149 15-FEB-12 12670015722540 15-FEB-12
? 1??? 14136?? 12670015722540 15-FEB-12 12670016001416 15-FEB-12

? Backup Set Copy #1 of backup set 5190
? Device Type Elapsed Time Completion Time Compressed Tag
? ----------- ------------ --------------- ---------- ---
? DISK??????? 00:02:45???? 16-FEB-12?????? NO???????? TAG20120216T010430

??? List of Backup Pieces for backup set 5190 Copy #1
??? BP Key? Pc# Status????? Piece Name
??? ------- --- ----------- ----------
??? 12553?? 1?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_35n3e111_s5221_p1_C1
??? 12554?? 2?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_35n3e111_s5221_p2_C1

BS Key? Size?????? Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
5192??? 12.30G???? DISK??????? 00:03:09???? 16-FEB-12?????

? List of Archived Logs in backup set 5192
? Thrd Seq???? Low SCN??? Low Time? Next SCN?? Next Time
? ---- ------- ---------- --------- ---------- ---------
? 1??? 14137?? 12670016001416 15-FEB-12 12670016653312 15-FEB-12
? 1??? 14138?? 12670016653312 15-FEB-12 12670017030219 15-FEB-12
? 1??? 14139?? 12670017030219 15-FEB-12 12670017394454 15-FEB-12
? 1??? 14140?? 12670017394454 15-FEB-12 12670017657280 15-FEB-12
? 1??? 14141?? 12670017657280 15-FEB-12 12670017890908 15-FEB-12
? 1??? 14142?? 12670017890908 15-FEB-12 12670018260012 15-FEB-12
? 1??? 14143?? 12670018260012 15-FEB-12 12670020257257 15-FEB-12
? 1??? 14144?? 12670020257257 15-FEB-12 12670022421290 15-FEB-12
? 1??? 14145?? 12670022421290 15-FEB-12 12670023190650 15-FEB-12
? 1??? 14146?? 12670023190650 15-FEB-12 12670024544870 15-FEB-12
? 1??? 14147?? 12670024544870 15-FEB-12 12670026609312 16-FEB-12
? 1??? 14148?? 12670026609312 16-FEB-12 12670026743414 16-FEB-12
? 1??? 14149?? 12670026743414 16-FEB-12 12670026894479 16-FEB-12
? 1??? 14150?? 12670026894479 16-FEB-12 12670027048502 16-FEB-12
? 1??? 14151?? 12670027048502 16-FEB-12 12670027176883 16-FEB-12
? 1??? 14152?? 12670027176883 16-FEB-12 12670027303388 16-FEB-12

? Backup Set Copy #1 of backup set 5192
? Device Type Elapsed Time Completion Time Compressed Tag
? ----------- ------------ --------------- ---------- ---
? DISK??????? 00:03:09???? 16-FEB-12?????? NO???????? TAG20120216T010430

??? List of Backup Pieces for backup set 5192 Copy #1
??? BP Key? Pc# Status????? Piece Name
??? ------- --- ----------- ----------
??? 12557?? 1?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_32n3e111_s5218_p1_C1
??? 12558?? 2?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_32n3e111_s5218_p2_C1
??? 12559?? 3?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_32n3e111_s5218_p3_C1

BS Key? Size?????? Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
5193??? 13.27G???? DISK??????? 00:03:55???? 16-FEB-12?????

? List of Archived Logs in backup set 5193
? Thrd Seq???? Low SCN??? Low Time? Next SCN?? Next Time
? ---- ------- ---------- --------- ---------- ---------
? 2??? 16148?? 12670010177819 15-FEB-12 12670011207570 15-FEB-12
? 2??? 16149?? 12670011207570 15-FEB-12 12670012283915 15-FEB-12
? 2??? 16150?? 12670012283915 15-FEB-12 12670012754302 15-FEB-12
? 2??? 16151?? 12670012754302 15-FEB-12 12670012969887 15-FEB-12
? 2??? 16152?? 12670012969887 15-FEB-12 12670013212670 15-FEB-12
? 2??? 16153?? 12670013212670 15-FEB-12 12670013780868 15-FEB-12
? 2??? 16154?? 12670013780868 15-FEB-12 12670013976009 15-FEB-12
? 2??? 16155?? 12670013976009 15-FEB-12 12670015183858 15-FEB-12
? 2??? 16156?? 12670015183858 15-FEB-12 12670015441965 15-FEB-12
? 2??? 16157?? 12670015441965 15-FEB-12 12670015599451 15-FEB-12
? 2??? 16158?? 12670015599451 15-FEB-12 12670015722094 15-FEB-12
? 2??? 16159?? 12670015722094 15-FEB-12 12670015785593 15-FEB-12
? 2??? 16160?? 12670015785593 15-FEB-12 12670015847887 15-FEB-12
? 2??? 16161?? 12670015847887 15-FEB-12 12670016000750 15-FEB-12

? Backup Set Copy #1 of backup set 5193
? Device Type Elapsed Time Completion Time Compressed Tag
? ----------- ------------ --------------- ---------- ---
? DISK??????? 00:03:55???? 16-FEB-12?????? NO???????? TAG20120216T010430

??? List of Backup Pieces for backup set 5193 Copy #1
??? BP Key? Pc# Status????? Piece Name
??? ------- --- ----------- ----------
??? 12560?? 1?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_39n3e111_s5225_p1_C1
??? 12561?? 2?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_39n3e111_s5225_p2_C1
??? 12562?? 3?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_39n3e111_s5225_p3_C1

BS Key? Size?????? Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
5195??? 13.28G???? DISK??????? 00:03:56???? 16-FEB-12?????

? List of Archived Logs in backup set 5195
? Thrd Seq???? Low SCN??? Low Time? Next SCN?? Next Time
? ---- ------- ---------- --------- ---------- ---------
? 2??? 16162?? 12670016000750 15-FEB-12 12670016088204 15-FEB-12
? 2??? 16163?? 12670016088204 15-FEB-12 12670016308969 15-FEB-12
? 2??? 16164?? 12670016308969 15-FEB-12 12670016653192 15-FEB-12
? 2??? 16165?? 12670016653192 15-FEB-12 12670017027396 15-FEB-12
? 2??? 16166?? 12670017027396 15-FEB-12 12670017225549 15-FEB-12
? 2??? 16167?? 12670017225549 15-FEB-12 12670017317060 15-FEB-12
? 2??? 16168?? 12670017317060 15-FEB-12 12670017393441 15-FEB-12
? 2??? 16169?? 12670017393441 15-FEB-12 12670017462567 15-FEB-12
? 2??? 16170?? 12670017462567 15-FEB-12 12670017541021 15-FEB-12
? 2??? 16171?? 12670017541021 15-FEB-12 12670017654244 15-FEB-12
? 2??? 16172?? 12670017654244 15-FEB-12 12670017735163 15-FEB-12
? 2??? 16173?? 12670017735163 15-FEB-12 12670017811611 15-FEB-12
? 2??? 16174?? 12670017811611 15-FEB-12 12670017888323 15-FEB-12
? 2??? 16175?? 12670017888323 15-FEB-12 12670019198216 15-FEB-12

? Backup Set Copy #1 of backup set 5195
? Device Type Elapsed Time Completion Time Compressed Tag
? ----------- ------------ --------------- ---------- ---
? DISK??????? 00:03:56???? 16-FEB-12?????? NO???????? TAG20120216T010430

??? List of Backup Pieces for backup set 5195 Copy #1
??? BP Key? Pc# Status????? Piece Name
??? ------- --- ----------- ----------
??? 12566?? 1?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_38n3e111_s5224_p1_C1
??? 12567?? 2?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_38n3e111_s5224_p2_C1
??? 12568?? 3?? AVAILABLE?? /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_38n3e111_s5224_p3_C1

BS Key? Size?????? Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
5197??? 3.02G????? DISK??????? 00:00:26???? 16-FEB-12?????
??????? BP Key: 12572?? Status: AVAILABLE? Compressed: NO? Tag: TAG20120216T010430
??????? Piece Name: /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_3bn3e18n_s5227_p1_C1

? List of Archived Logs in backup set 5197
? Thrd Seq???? Low SCN??? Low Time? Next SCN?? Next Time
? ---- ------- ---------- --------- ---------- ---------
? 2??? 16176?? 12670019198216 15-FEB-12 12670023192712 15-FEB-12
? 2??? 16177?? 12670023192712 15-FEB-12 12670025565356 16-FEB-12
? 2??? 16178?? 12670025565356 16-FEB-12 12670026143737 16-FEB-12
? 2??? 16179?? 12670026143737 16-FEB-12 12670026897385 16-FEB-12
? 2??? 16180?? 12670026897385 16-FEB-12 12670027305649 16-FEB-12
? 2??? 16181?? 12670027305649 16-FEB-12 12670027693987 16-FEB-12

看到都需要的归档日志都包含进去了,满心欢喜的执行如下命令

RMAN> run{
2> allocate channel c1 type disk;
3> allocate channel c2 type disk;
4> allocate channel c3 type disk;
5> allocate channel c4 type disk;
6> set archivelog destination to '/arch_log/restore';
7> restore archivelog from time? "to_date('2012-02-15 17:00:00','yyyy-mm-dd hh24:mi:ss')";
8> release channel c1;
9> release channel c2;
10> release channel c3;
11> release channel c4;
12> }

using target database control file instead of recovery catalog
allocated channel: c1
channel c1: sid=4849 instance=zgscdb1 devtype=DISK

allocated channel: c2
channel c2: sid=5326 instance=zgscdb1 devtype=DISK

allocated channel: c3
channel c3: sid=4946 instance=zgscdb1 devtype=DISK

allocated channel: c4
channel c4: sid=4879 instance=zgscdb1 devtype=DISK

executing command: SET ARCHIVELOG DESTINATION

Starting restore at 16-FEB-12

archive log thread 1 sequence 14155 is already on disk as file /arch_log/zgsc_db01_arch/1_14155_743864713.dbf
archive log thread 1 sequence 14156 is already on disk as file /arch_log/zgsc_db01_arch/1_14156_743864713.dbf
archive log thread 1 sequence 14157 is already on disk as file /arch_log/zgsc_db01_arch/1_14157_743864713.dbf
archive log thread 1 sequence 14158 is already on disk as file /arch_log/zgsc_db01_arch/1_14158_743864713.dbf
archive log thread 1 sequence 14159 is already on disk as file /arch_log/zgsc_db01_arch/1_14159_743864713.dbf
archive log thread 1 sequence 14160 is already on disk as file /arch_log/zgsc_db01_arch/1_14160_743864713.dbf
archive log thread 1 sequence 14161 is already on disk as file /arch_log/zgsc_db01_arch/1_14161_743864713.dbf
archive log thread 1 sequence 14162 is already on disk as file /arch_log/zgsc_db01_arch/1_14162_743864713.dbf
archive log thread 1 sequence 14163 is already on disk as file /arch_log/zgsc_db01_arch/1_14163_743864713.dbf
archive log thread 1 sequence 14164 is already on disk as file /arch_log/zgsc_db01_arch/1_14164_743864713.dbf
archive log thread 1 sequence 14165 is already on disk as file /arch_log/zgsc_db01_arch/1_14165_743864713.dbf
released channel: c1
released channel: c2
released channel: c3
released channel: c4
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 02/16/2012 13:47:51
RMAN-06026: some targets not found - aborting restore
RMAN-06025: no backup of log thread 2 seq 16209 lowscn 12670043591603 found to restore
RMAN-06025: no backup of log thread 2 seq 16208 lowscn 12670043181908 found to restore
RMAN-06025: no backup of log thread 2 seq 16207 lowscn 12670043081120 found to restore
RMAN-06025: no backup of log thread 2 seq 16206 lowscn 12670042973201 found to restore
RMAN-06025: no backup of log thread 2 seq 16205 lowscn 12670042654302 found to restore
RMAN-06025: no backup of log thread 2 seq 16204 lowscn 12670041610965 found to restore
RMAN-06025: no backup of log thread 2 seq 16203 lowscn 12670040751853 found to restore
RMAN-06025: no backup of log thread 2 seq 16202 lowscn 12670040584982 found to restore
RMAN-06025: no backup of log thread 2 seq 16201 lowscn 12670040305341 found to restore
RMAN-06025: no backup of log thread 2 seq 16200 lowscn 12670039987074 found to restore
RMAN-06025: no backup of log thread 2 seq 16199 lowscn 12670039745774 found to restore
RMAN-06025: no backup of log thread 2 seq 16198 lowscn 12670039250107 found to restore
RMAN-06025: no backup of log thread 2 seq 16197 lowscn 12670038751777 found to restore
RMAN-06025: no backup of log thread 2 seq 16196 lowscn 12670038122926 found to restore
RMAN-06025: no backup of log thread 2 seq 16195 lowscn 12670037110291 found to restore
RMAN-06025: no backup of log thread 2 seq 16194 lowscn 12670036384317 found to restore
RMAN-06025: no backup of log thread 2 seq 16193 lowscn 12670036130529 found to restore
RMAN-06025: no backup of log thread 2 seq 16192 lowscn 12670035930022 found to restore
RMAN-06025: no backup of log thread 2 seq 16191 lowscn 12670035736951 found to restore
RMAN-06025: no backup of log thread 2 seq 16190 lowscn 12670034378583 found to restore
RMAN-06025: no backup of log thread 2 seq 16189 lowscn 12670033507562 found to restore
RMAN-06025: no backup of log thread 2 seq 16188 lowscn 12670032888750 found to restore
RMAN-06025: no backup of log thread 2 seq 16187 lowscn 12670031934562 found to restore
RMAN-06025: no backup of log thread 2 seq 16186 lowscn 12670031295273 found to restore
RMAN-06025: no backup of log thread 2 seq 16185 lowscn 12670029669200 found to restore
RMAN-06025: no backup of log thread 2 seq 16184 lowscn 12670029122812 found to restore
RMAN-06025: no backup of log thread 2 seq 16183 lowscn 12670027774997 found to restore
RMAN-06025: no backup of log thread 2 seq 16182 lowscn 12670027693987 found to restore

报错,郁闷,超级郁闷
$ ls /arch_log/zgsc_01_arch
1_14155_743864713.dbf? 1_14158_743864713.dbf? 1_14161_743864713.dbf? 1_14164_743864713.dbf? 1_14167_743864713.dbf
1_14156_743864713.dbf? 1_14159_743864713.dbf? 1_14162_743864713.dbf? 1_14165_743864713.dbf
1_14157_743864713.dbf? 1_14160_743864713.dbf? 1_14163_743864713.dbf? 1_14166_743864713.dbf

观察报错发现没有找到的备份信息主要都是thread 2的备份信息,结合上面ls命令的输出分析得出,线程为1日志序列号从14155至14166的归档日志虽然为2012-02-15 17:00之后的归档日志,但却仍再使用。使用restore archivelog from time? "to_date('2012-02-15 17:00:00','yyyy-mm-dd hh24:mi:ss')";命令恢复时会提示already on disk。
结合list backup of archivelog from? time? "to_date('2012-02-15 17:00:00','yyyy-mm-dd hh24:mi:ss')";

node1
$ ls /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_39n3e111_s5225_p1_C1
ls: 0653-341 The file /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_39n3e111_s5225_p1_C1 does not exist

node2
$ ls /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_35n3e111_s5221_p1_C1
ls: 0653-341 The file /rman_data/zgscdb_rman/ZGSCDB_arch_20120216_35n3e111_s5221_p1_C1 does not exist.
发现双节点都只有各自的备份文件,备份文件没有进行存储共享的配置(出于安全考虑,确实不应该把备份配置成共享的,不过设置成nfs挂载应该是没问题)。呵呵,犯了个低级错误。

经过以上分析得出,restore archivelog from time? "to_date('2012-02-15 17:00:00','yyyy-mm-dd hh24:mi:ss')";命令会自动查找所需的备份文件进行还原,但是由于双节点无法同时访问所有需要备份文件,故需在特定节点还原指定的日志序列号,进行逐个还原,即需要在相应的实例上还原相应thread对应的归档日志。

thread的意义:RAC环境下,多台主机同时访问位于共有的磁盘阵列的共同的数据库结构。每台主机上的数据库例程分别写自己的日志文件,不同的例程通过thread来区分。

于是根据list backup of archivelog from? time? "to_date('2012-02-15 17:00:00','yyyy-mm-dd hh24:mi:ss')"
命令得出的归档日志和备份信息,执行如下命令恢复

在RAC节点node 1上执行
run{
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
allocate channel c4 type disk;
set archivelog destination to '/arch_log/restore';
restore archivelog from logseq 14131 until logseq 14153 thread 1;
release channel c1;
release channel c2;
release channel c3;
release channel c4;
}

在RAC节点node 2上执行
run{
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
allocate channel c4 type disk;
set archivelog destination to '/arch_log/restore';
restore archivelog from logseq 16148 until logseq 16181 thread 2;
release channel c1;
release channel c2;
release channel c3;
release channel c4;
}
还原成功。

这里顺带说一句,如果需要进行数据库恢复,那么必须在能够访问所有归档日志的节点上进行,这里是node1

感谢惜分飞,边城,杨帅君,select.简单的指导

本文原创,转载请注明出处、作者

如有错误,欢迎指正

邮箱:czmcj@163.com

读书人网 >其他数据库

热点推荐