Oracle RMAN 表空间恢复
需求:
恢復(fù)1天前(05/06/2021 08:05:05)數(shù)據(jù)庫(kù)內(nèi)一個(gè)用戶的數(shù)據(jù)。
環(huán)境說明:
DB:Oracle 11204 RAC
OS:AIX 7.1
操作:
| 1 2 3 4 | 1.由于之前只有rman備份,沒有邏輯備份,只能進(jìn)行rman恢復(fù)。 2.全庫(kù)有3T多,數(shù)據(jù)量較大,恢復(fù)機(jī)剩余空間不到1T,無(wú)法進(jìn)行全庫(kù)恢復(fù)。 3.查看用戶所在表空間很小,只有300G,考慮只恢復(fù)用戶數(shù)據(jù)所在表空間,在加上system,sysaux,undotbs表空間,不恢復(fù)其他業(yè)務(wù)用戶的表空間。 4.啟動(dòng)數(shù)據(jù)庫(kù)時(shí),把其他沒有恢復(fù)的表空間offline后,就可以正常打開數(shù)據(jù)庫(kù)。 |
具體操作如下:
1.恢復(fù)控制文件
###Rman Script:
| 1 2 3 4 5 6 7 8 | run?{ SET?DBID?3311060971; allocate?channel?ch1?type?'sbt_tape' PARMS="###省略###" TRACE?0; restore?controlfile??from?autobackup??until?time?=?"TO_DATE('05/06/2021?08:05:05','MM/DD/YYYY?HH24:MI:SS')"?; } exit; |
問題:
| 1 2 3 4 5 | 此處恢復(fù)控制文件的方式是有問題的,因?yàn)樽罱K是想將數(shù)據(jù)庫(kù)恢復(fù)到05/06/2021?08:05:05時(shí)間點(diǎn)。 而在恢復(fù)控制文件時(shí),由于并沒有05/06/2021?08:05:05這一時(shí)刻的控制文件備份。 在恢復(fù)過程中沒有報(bào)錯(cuò),而是直接恢復(fù)了離05/06/2021?08:05:05時(shí)間點(diǎn)最近的一次控制文件進(jìn)行恢復(fù)。 這就導(dǎo)致了控制文件恢復(fù)的時(shí)間點(diǎn)提前了,很多歸檔等備份信息不全,最終導(dǎo)致數(shù)據(jù)庫(kù)在recovery時(shí)提示找不到歸檔,恢復(fù)出的數(shù)據(jù)庫(kù)也提前了。 實(shí)際上要恢復(fù)的控制文件備份的時(shí)間可以稍往后推一些。 |
恢復(fù)日志如下:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | RMAN>?2>?3>?4>?5>?6>?7> allocated?channel:?ch1 channel?ch1:?SID=541?device?type=SBT_TAPE channel?ch1:?CommVault?Systems?for?Oracle:?Version?11.0.0(BUILD80) sent?command?to?channel:?ch1 Starting?restore?at?May?04?2021?17:34:56 channel?ch1:?looking?for?AUTOBACKUP?on?day:?20210506 channel?ch1:?AUTOBACKUP?found:?c-3311060971-20210506-01 channel?ch1:?restoring?control?file?from?AUTOBACKUP?c-3311060971-20210506-01 channel?ch1:?control?file?restore?from?AUTOBACKUP?complete output?file?name=/oradata/chenj/control01 output?file?name=/oradata/chenj/control02 Finished?restore?at?May?04?2021?17:40:07 released?channel:?ch1 RMAN> Recovery?Manager?complete. |
2.執(zhí)行restore?
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | run?{ allocate?channel?ch1?type?'sbt_tape' PARMS="###省略###" TRACE?0; set?newname?for?datafile?'+AA_BB_CJCXX_DATA/chenjch/datafile/cccc_xxxxxx_data_01.dbf'?to?'/oradata/chenj/cccc_xxxxxx_data_01.dbf'; set?newname?for?datafile?'+AA_BB_CJCXX_DATA/chenjch/datafile/cccc_xxxxxx_data_02.dbf'?to?'/oradata/chenj/cccc_xxxxxx_data_02.dbf'; set?newname?for?datafile?'+AA_BB_CJCXX_DATA/chenjch/datafile/sysaux.302.1042642447'?to?'/oradata/chenj/sysaux.302.1042642447'; set?newname?for?datafile?'+AA_BB_CJCXX_DATA/chenjch/datafile/system.285.1042646103'?to?'/oradata/chenj/system.285.1042646103'; set?newname?for?datafile?'+AA_BB_CJCXX_DATA/chenjch/datafile/undotbs1.301.1042643625'?to?'/oradata/chenj/undotbs1.301.1042643625'; set?newname?for?datafile?'+AA_BB_CJCXX_DATA/chenjch/datafile/undotbs2.322.1042633105'?to?'/oradata/chenj/undotbs2.322.1042633105'; set?newname?for?datafile?'+AA_BB_CJCXX_DATA/chenjch/datafile/users.284.1042646223'?to?'/oradata/chenj/users.284.1042646223'; restore?(tablespace?'SYSTEM','SYSAUX','USERS','UNDOTBS1','UNDOTBS2','AAAA_XXXXX_UUUU')??until?time?=?"TO_DATE('05/06/2021?08:05:05','MM/DD/YYYY?HH24:MI:SS')"?; switch?datafile?all;? } exit; |
日志:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | RMAN>?2>?3>?4>?5>?6>?7>?8>?9>?10>?11>?12>?13>?14>?15>?16>?17>?18>? allocated?channel:?ch1 channel?ch1:?SID=464?device?type=SBT_TAPE channel?ch1:?CommVault?Systems?for?Oracle:?Version?11.0.0(BUILD80) allocated?channel:?ch2 channel?ch2:?SID=541?device?type=SBT_TAPE channel?ch2:?CommVault?Systems?for?Oracle:?Version?11.0.0(BUILD80) sent?command?to?channel:?ch1 sent?command?to?channel:?ch2 executing?command:?SET?NEWNAME executing?command:?SET?NEWNAME executing?command:?SET?NEWNAME executing?command:?SET?NEWNAME executing?command:?SET?NEWNAME executing?command:?SET?NEWNAME executing?command:?SET?NEWNAME Starting?restore?at?May?04?2021?18:30:45 new?media?label?is?V_241064_3217058?for?piece?484407_chenj_aj038d7e_1_1 new?media?label?is?V_241064_3217091?for?piece?484407_chenj_ak038ehq_1_1 new?media?label?is?V_241064_3217092?for?piece?484407_chenj_al038emc_1_1 new?media?label?is?V_241064_3217061?for?piece?484407_chenj_ai038d7d_1_1 new?media?label?is?V_241064_3217058?for?piece?484407_chenj_aj038d7e_1_1 new?media?label?is?V_241064_3217091?for?piece?484407_chenj_ak038ehq_1_1 new?media?label?is?V_241064_3217092?for?piece?484407_chenj_al038emc_1_1 new?media?label?is?V_241064_3217061?for?piece?484407_chenj_ai038d7d_1_1 channel?ch1:?starting?datafile?backup?set?restore channel?ch1:?specifying?datafile(s)?to?restore?from?backup?set channel?ch1:?restoring?datafile?00001?to?/oradata/chenj/system.285.1042646103 channel?ch1:?restoring?datafile?00004?to?/oradata/chenj/undotbs2.322.1042633105 channel?ch1:?reading?from?backup?piece?484407_chenj_aj038d7e_1_1 channel?ch2:?starting?datafile?backup?set?restore channel?ch2:?specifying?datafile(s)?to?restore?from?backup?set channel?ch2:?restoring?datafile?00051?to?/oradata/chenj/cccc_xxxxxx_data_01.dbf channel?ch2:?reading?from?backup?piece?484407_chenj_ai038d7d_1_1 channel?ch2:?piece?handle=484407_chenj_ai038d7d_1_1?tag=TAG20210506T040045 channel?ch2:?restored?backup?piece?1 channel?ch2:?restore?complete,?elapsed?time:?00:31:05 channel?ch2:?starting?datafile?backup?set?restore channel?ch2:?specifying?datafile(s)?to?restore?from?backup?set channel?ch2:?restoring?datafile?00002?to?/oradata/chenj/sysaux.302.1042642447 channel?ch2:?reading?from?backup?piece?484407_chenj_ak038ehq_1_1 channel?ch1:?piece?handle=484407_chenj_aj038d7e_1_1?tag=TAG20210506T040045 channel?ch1:?restored?backup?piece?1 channel?ch1:?restore?complete,?elapsed?time:?01:05:11 channel?ch1:?starting?datafile?backup?set?restore channel?ch1:?specifying?datafile(s)?to?restore?from?backup?set channel?ch1:?restoring?datafile?00005?to?/oradata/chenj/users.284.1042646223 channel?ch1:?restoring?datafile?00003?to?/oradata/chenj/undotbs1.301.1042643625 channel?ch1:?restoring?datafile?00052?to?/oradata/chenj/cccc_xxxxxx_data_02.dbf channel?ch1:?reading?from?backup?piece?484407_chenj_al038emc_1_1 channel?ch2:?piece?handle=484407_chenj_ak038ehq_1_1?tag=TAG20210506T040045 channel?ch2:?restored?backup?piece?1 channel?ch2:?restore?complete,?elapsed?time:?01:02:30 channel?ch1:?piece?handle=484407_chenj_al038emc_1_1?tag=TAG20210506T040045 channel?ch1:?restored?backup?piece?1 channel?ch1:?restore?complete,?elapsed?time:?00:57:05 Finished?restore?at?May?04?2021?20:33:24 datafile?1?switched?to?datafile?copy input?datafile?copy?RECID=12?STAMP=1077050007?file?name=/oradata/chenj/system.285.1042646103 datafile?2?switched?to?datafile?copy input?datafile?copy?RECID=13?STAMP=1077050008?file?name=/oradata/chenj/sysaux.302.1042642447 datafile?5?switched?to?datafile?copy input?datafile?copy?RECID=14?STAMP=1077050008?file?name=/oradata/chenj/users.284.1042646223 datafile?3?switched?to?datafile?copy input?datafile?copy?RECID=15?STAMP=1077050008?file?name=/oradata/chenj/undotbs1.301.1042643625 datafile?4?switched?to?datafile?copy input?datafile?copy?RECID=16?STAMP=1077050008?file?name=/oradata/chenj/undotbs2.322.1042633105 datafile?51?switched?to?datafile?copy input?datafile?copy?RECID=17?STAMP=1077050008?file?name=/oradata/chenj/cccc_xxxxxx_data_01.dbf datafile?52?switched?to?datafile?copy input?datafile?copy?RECID=18?STAMP=1077050008?file?name=/oradata/chenj/cccc_xxxxxx_data_02.dbf released?channel:?ch1 released?channel:?ch2 RMAN>? Recovery?Manager?complete. |
3.執(zhí)行recovery?
| 1 2 3 4 5 6 7 8 | run?{ allocate?channel?ch1?type?'sbt_tape' PARMS="###省略###" TRACE?0; recover?database?skip?tablespace?'DATA_TBS1','DATA_TBS2','DATA_TBS3','DATA_TBS4','DATA_TBS5','...' until?time?=?"TO_DATE('05/06/2021?08:05:05','MM/DD/YYYY?HH24:MI:SS')"; } exit; |
日志:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 | RMAN>?2>?3>?4>?5>?6>?7>?8>?9>?10>?11>? allocated?channel:?ch1 channel?ch1:?SID=541?device?type=SBT_TAPE channel?ch1:?CommVault?Systems?for?Oracle:?Version?11.0.0(BUILD80) allocated?channel:?ch2 channel?ch2:?SID=618?device?type=SBT_TAPE channel?ch2:?CommVault?Systems?for?Oracle:?Version?11.0.0(BUILD80) sent?command?to?channel:?ch1 sent?command?to?channel:?ch2 Starting?recover?at?May?04?2021?20:33:57 ###沒有restore出來(lái)的數(shù)據(jù)文件自動(dòng)執(zhí)行了offline操作### Executing:?alter?database?datafile?8?offline Executing:?alter?database?datafile?9?offline Executing:?alter?database?datafile?11?offline Executing:?alter?database?datafile?13?offline Executing:?alter?database?datafile?14?offline Executing:?alter?database?datafile?15?offline Executing:?alter?database?datafile?16?offline Executing:?alter?database?datafile?17?offline Executing:?alter?database?datafile?18?offline Executing:?alter?database?datafile?20?offline Executing:?alter?database?datafile?21?offline Executing:?alter?database?datafile?24?offline Executing:?alter?database?datafile?25?offline Executing:?alter?database?datafile?26?offline Executing:?alter?database?datafile?27?offline Executing:?alter?database?datafile?28?offline Executing:?alter?database?datafile?29?offline Executing:?alter?database?datafile?30?offline Executing:?alter?database?datafile?31?offline Executing:?alter?database?datafile?32?offline Executing:?alter?database?datafile?33?offline Executing:?alter?database?datafile?34?offline Executing:?alter?database?datafile?35?offline Executing:?alter?database?datafile?36?offline Executing:?alter?database?datafile?37?offline Executing:?alter?database?datafile?38?offline Executing:?alter?database?datafile?39?offline Executing:?alter?database?datafile?40?offline Executing:?alter?database?datafile?41?offline Executing:?alter?database?datafile?42?offline Executing:?alter?database?datafile?43?offline Executing:?alter?database?datafile?44?offline Executing:?alter?database?datafile?45?offline Executing:?alter?database?datafile?46?offline Executing:?alter?database?datafile?47?offline Executing:?alter?database?datafile?48?offline Executing:?alter?database?datafile?49?offline Executing:?alter?database?datafile?50?offline Executing:?alter?database?datafile?54?offline Executing:?alter?database?datafile?55?offline Executing:?alter?database?datafile?56?offline Executing:?alter?database?datafile?57?offline Executing:?alter?database?datafile?58?offline Executing:?alter?database?datafile?59?offline Executing:?alter?database?datafile?60?offline Executing:?alter?database?datafile?63?offline Executing:?alter?database?datafile?64?offline Executing:?alter?database?datafile?65?offline Executing:?alter?database?datafile?66?offline Executing:?alter?database?datafile?67?offline Executing:?alter?database?datafile?71?offline Executing:?alter?database?datafile?72?offline Executing:?alter?database?datafile?73?offline Executing:?alter?database?datafile?74?offline Executing:?alter?database?datafile?75?offline Executing:?alter?database?datafile?76?offline Executing:?alter?database?datafile?77?offline Executing:?alter?database?datafile?78?offline Executing:?alter?database?datafile?79?offline Executing:?alter?database?datafile?80?offline Executing:?alter?database?datafile?83?offline Executing:?alter?database?datafile?84?offline Executing:?alter?database?datafile?85?offline Executing:?alter?database?datafile?86?offline Executing:?alter?database?datafile?87?offline Executing:?alter?database?datafile?88?offline Executing:?alter?database?datafile?89?offline Executing:?alter?database?datafile?90?offline Executing:?alter?database?datafile?91?offline Executing:?alter?database?datafile?92?offline Executing:?alter?database?datafile?93?offline Executing:?alter?database?datafile?94?offline Executing:?alter?database?datafile?95?offline Executing:?alter?database?datafile?96?offline Executing:?alter?database?datafile?97?offline Executing:?alter?database?datafile?98?offline Executing:?alter?database?datafile?99?offline Executing:?alter?database?datafile?100?offline Executing:?alter?database?datafile?101?offline Executing:?alter?database?datafile?102?offline Executing:?alter?database?datafile?103?offline Executing:?alter?database?datafile?104?offline Executing:?alter?database?datafile?105?offline Executing:?alter?database?datafile?106?offline Executing:?alter?database?datafile?107?offline Executing:?alter?database?datafile?108?offline Executing:?alter?database?datafile?109?offline Executing:?alter?database?datafile?110?offline Executing:?alter?database?datafile?111?offline Executing:?alter?database?datafile?112?offline Executing:?alter?database?datafile?113?offline Executing:?alter?database?datafile?114?offline Executing:?alter?database?datafile?115?offline Executing:?alter?database?datafile?116?offline Executing:?alter?database?datafile?6?offline Executing:?alter?database?datafile?7?offline Executing:?alter?database?datafile?23?offline Executing:?alter?database?datafile?10?offline Executing:?alter?database?datafile?12?offline Executing:?alter?database?datafile?19?offline Executing:?alter?database?datafile?22?offline Executing:?alter?database?datafile?53?offline Executing:?alter?database?datafile?68?offline Executing:?alter?database?datafile?69?offline Executing:?alter?database?datafile?70?offline Executing:?alter?database?datafile?82?offline Executing:?alter?database?datafile?81?offline Executing:?alter?database?datafile?61?offline Executing:?alter?database?datafile?62?offline starting?media?recovery new?media?label?is?V_241064_3217122?for?piece?484407_chenj_ap038g7b_1_1 new?media?label?is?V_241064_3217123?for?piece?484407_chenj_aq038gaa_1_1 new?media?label?is?V_241064_3217122?for?piece?484407_chenj_ap038g7b_1_1 new?media?label?is?V_241064_3217123?for?piece?484407_chenj_aq038gaa_1_1 channel?ch1:?starting?archived?log?restore?to?default?destination channel?ch1:?restoring?archived?log archived?log?thread=1?sequence=180348 channel?ch1:?restoring?archived?log archived?log?thread=2?sequence=182735 channel?ch1:?restoring?archived?log archived?log?thread=1?sequence=180349 channel?ch1:?restoring?archived?log archived?log?thread=1?sequence=180350 channel?ch1:?reading?from?backup?piece?484407_chenj_ap038g7b_1_1 channel?ch2:?starting?archived?log?restore?to?default?destination channel?ch2:?restoring?archived?log archived?log?thread=2?sequence=182736 channel?ch2:?reading?from?backup?piece?484407_chenj_aq038gaa_1_1 channel?ch2:?piece?handle=484407_chenj_aq038gaa_1_1?tag=TAG20210506T045152 channel?ch2:?restored?backup?piece?1 channel?ch2:?restore?complete,?elapsed?time:?00:00:07 channel?ch1:?piece?handle=484407_chenj_ap038g7b_1_1?tag=TAG20210506T045152 channel?ch1:?restored?backup?piece?1 channel?ch1:?restore?complete,?elapsed?time:?00:02:25 archived?log?file?name=/oradata/chenj/arch/1_180348_864829931.dbf?thread=1?sequence=180348 archived?log?file?name=/oradata/chenj/arch/2_182735_864829931.dbf?thread=2?sequence=182735 archived?log?file?name=/oradata/chenj/arch/1_180349_864829931.dbf?thread=1?sequence=180349 archived?log?file?name=/oradata/chenj/arch/1_180350_864829931.dbf?thread=1?sequence=180350 archived?log?file?name=/oradata/chenj/arch/2_182736_864829931.dbf?thread=2?sequence=182736 unable?to?find?archived?log archived?log?thread=1?sequence=180351 released?channel:?ch1 released?channel:?ch2 RMAN-00571:?=========================================================== RMAN-00569:?===============?ERROR?MESSAGE?STACK?FOLLOWS?=============== RMAN-00571:?=========================================================== RMAN-03002:?failure?of?recover?command?at?05/07/2021?08:37:27 RMAN-06054:?media?recovery?requesting?unknown?archived?log?for?thread?1?with?sequence?180351?and?starting?SCN?of?542755860991 RMAN>? Recovery?Manager?complete. |
| 1 2 3 | recover最后一步報(bào)錯(cuò)了,提示找不到180351。 查看180351歸檔生成時(shí)間,發(fā)現(xiàn)是5月5日的歸檔,說明數(shù)據(jù)也只恢復(fù)到了5月5日,丟失了1天的數(shù)據(jù)。 出現(xiàn)這個(gè)問題的原因就是前面提到的,控制文件恢復(fù)的時(shí)間不對(duì),導(dǎo)致控制文件記錄的備份信息不全。 |
解決方案:
由于恢復(fù)完成后,數(shù)據(jù)庫(kù)執(zhí)行了open read only操作,而并沒有執(zhí)行open resetlogs操作,說明數(shù)據(jù)庫(kù)還可以繼續(xù)執(zhí)行recovery操作,
之前還原的數(shù)據(jù)文件不需要在執(zhí)行restore操作了。
具體操作:
| 1 2 3 4 5 6 7 | 1.停庫(kù)備份控制文件。 2.恢復(fù)出較新的控制文件(時(shí)間略大約05/06/2021?08:05:05)。 3.用新的控制文件掛載數(shù)據(jù)庫(kù)。 4.restore出需要的歸檔文件。 5.停庫(kù),用備份的控制文件掛載數(shù)據(jù)庫(kù)(不在需要轉(zhuǎn)換路徑了)。 6.將新恢復(fù)出的歸檔日志注冊(cè)到老控制文件中。 7.繼續(xù)執(zhí)行recovery操作。 |
###chenjuchao 20210711 11:30###
與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的Oracle RMAN 表空间恢复的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL备份与恢复——基于Xtraba
- 下一篇: Oracle:select 或 inac