




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Oracle10g更強(qiáng)大的回閃數(shù)據(jù)庫(kù)功能 【IT168服務(wù)器學(xué)院】用一個(gè)簡(jiǎn)單的SQL語(yǔ)句將一個(gè)表或者整個(gè)數(shù)據(jù)庫(kù)恢復(fù)到以前的某一點(diǎn) 除夕之夜,Acme銀行的數(shù)據(jù)庫(kù)管理員(DBA)John正在和他的朋友們一起狂歡,倒計(jì)時(shí)迎接新的一年的到來(lái)。就在子夜鐘聲敲響、人群歡呼之時(shí),他的尋呼機(jī)突然響了。在銀行 的數(shù)據(jù)中心,在年末進(jìn)行利息累機(jī)批處理簿記過(guò)程中發(fā)生了錯(cuò)誤,所有的利息計(jì)算都不準(zhǔn)確。 幸好開(kāi)發(fā)團(tuán)隊(duì)找出了錯(cuò)誤所在,并開(kāi)發(fā)一個(gè)應(yīng)急糾正模塊,但這一糾正模塊不能恢復(fù)已經(jīng)造 成的破壞。部門經(jīng)理問(wèn)John是否有什么方法能往回倒一些時(shí)間,將數(shù)據(jù)庫(kù)恢復(fù)至該批處理開(kāi)始之前的狀態(tài),該批處理大約是在晚上11:00開(kāi)始的。
2、對(duì)于DBA們來(lái)說(shuō),這不是一件很熟悉的事嗎?John的選擇是什么呢? 在Oracle數(shù)據(jù)庫(kù)10g之前,John可能會(huì)做一個(gè)時(shí)間點(diǎn)恢復(fù),來(lái)將數(shù)據(jù)庫(kù)恢復(fù)至所希望的某一時(shí)刻的狀態(tài)。不幸的是,銀行的定期日常備份大約就是在那個(gè)時(shí)間開(kāi)始,這就意味 著他將不得不用接近24小時(shí)的有價(jià)值的歸案日志來(lái)恢復(fù)數(shù)據(jù)庫(kù)。 Oracle9i數(shù)據(jù)庫(kù)中提供的另一種選擇是使用回閃查詢特性來(lái)重建到晚上11:00為止的該 表的各行,并手動(dòng)生成一組不同的表。這一方法盡管理論上可行,但如果表的數(shù)量很大,則 會(huì)變得不切合實(shí)際。 幸運(yùn)的是,John現(xiàn)在的數(shù)據(jù)庫(kù)是Oracle數(shù)據(jù)庫(kù)10g,所以他擁有更多的選擇。 回閃表 讓我們來(lái)看一下上面的情況
3、。出問(wèn)題的年末批處理可能僅影響少數(shù)表。例如,它可能僅用新的賬戶結(jié)余更新了ACCOUNTS表。如果確實(shí)是這種情況,則John可以使用回閃表特性,它會(huì)將一個(gè)表恢復(fù)到一個(gè)過(guò)去的時(shí)間點(diǎn)的狀態(tài)。 執(zhí)行回閃表操作不需要特殊的設(shè)置。唯一的要求是表必須具有可移動(dòng)的行-或者是在創(chuàng) 建表時(shí)設(shè)置,或者是在以后禾1J用ALTERTABLEACCOUNTSENABLEROWMOVEMENT 語(yǔ)句設(shè)置。FLASHBACKTABLE語(yǔ)句從撤消段中(undosegment)讀取該表的過(guò)去映像,并利用Oracle9i中引入的回閃查詢重建表行。 如果模式所有者之外的非DBA用戶執(zhí)行回閃表操作,她需要擁有對(duì)該表的SELECT、 D
4、ELETE、INSERT、ALTER和FLASHBACK權(quán)限,或者擁有等價(jià)的ANYTABLE系統(tǒng)權(quán)限。 對(duì)于John來(lái)說(shuō),ACCOUNTS像以下的樣子: ACCOUNT_NONUMBER(12), BALANCENUMBER(15,2) STATUSCHAR(1) STATUS的列值通常為A(active,活動(dòng)),但是當(dāng)利息計(jì)算應(yīng)用程序啟動(dòng)時(shí),所有的賬戶均被凍結(jié),此狀態(tài)也被更新為F(frozen,凍結(jié))。當(dāng)對(duì)每一賬戶都計(jì)算了利息后,該 狀態(tài)被更新為I(interestapplied,利息已計(jì)算)。 下面是John用使用回閃表特性的步驟: 他索要一個(gè)大概的時(shí)間點(diǎn),在這一點(diǎn)上數(shù)據(jù)庫(kù)必須被重新檢查,
5、答案是大約晚上11:00。 他定義一個(gè)期望返回到的邏輯參考點(diǎn)。下面是他現(xiàn)在查詢?cè)摫頃r(shí)所看到的內(nèi)容: selectstatus,count(*) fromACCOUNTS groupbystatus; STATUSCOUNT(*) I27088 F19999 該輸出顯示到目前為止已經(jīng)有27088個(gè)賬戶被處理(狀態(tài)=I)。 此前的狀態(tài)為A,這不是John所希望返回的位置。所希望的邏輯參考點(diǎn)應(yīng)該是所有賬戶的狀態(tài)都為F的時(shí)間 點(diǎn)。他必須恢復(fù)到所有賬戶狀態(tài)都為F的狀態(tài),這大約發(fā)生于晚上11:00。 他檢查一個(gè)狀態(tài)=I的當(dāng)前示例賬戶,以便為未來(lái)的校驗(yàn)測(cè)試設(shè)定一個(gè)基線: selectaccount_no,b
6、alance fromACCOUNTS wherestatus=T andrownumflashbackdatabasetoscn00; Startingflashbackat01-JAN-04 allocatedchannel:ORA_DISK_1 channelORA_DISK_1:sid=10devtype=DISK startingmediarecoverymediarecoverycompleteFinishedflashbackat01-JAN-04 對(duì)FlashbackDatabase操作有幾條限制。數(shù)據(jù)庫(kù)不能回閃至通過(guò)RESETLOGS選項(xiàng)它被 打開(kāi)之前的時(shí)間點(diǎn)。 如果未恢復(fù)或
7、重新創(chuàng)建控制文件,如果已經(jīng)刪除了一個(gè)表空間,或者已縮小了一個(gè)數(shù)據(jù) 文件。 但是數(shù)據(jù)的擴(kuò)展是通過(guò)回閃來(lái)處理的,所以由于自動(dòng)擴(kuò)展選項(xiàng)而發(fā)生的文件自動(dòng)擴(kuò)展不 成為問(wèn)題。 估算恢復(fù)區(qū)域的大小 當(dāng)John在仔細(xì)考慮其選項(xiàng)時(shí)出現(xiàn)的一個(gè)問(wèn)題是,他可以將數(shù)據(jù)庫(kù)回閃到過(guò)去的什么時(shí)刻?他在兩個(gè)視圖中找到這一答案。第一個(gè)視圖-V$FLASHBACK_DATABASE_LOG顯示出已經(jīng)生成了多少回閃日志,并已經(jīng)將其置于恢復(fù)區(qū)域中。下面是對(duì)該視圖的查詢,并以垂 直格式顯示這些列: select* fromv$flashback_database_log; OLDESTFLASHBACKSCN FLASHBACKSIZE
8、 ESTIMATEDFLASHBACKSIZE:11 OLDESTFLASHBACKTIME :30-DEC-200318:37:09 RETENTIONTARGET :10000 這表示John最多可以回閃至SCN11或者2003年12月30日的下午06:37:09。根據(jù)初始化參數(shù)值db_flashback_retention_target,當(dāng)前預(yù)期的回閃保持時(shí)間為10000分鐘,但是保 持這些多回閃日志的恢復(fù)區(qū)域大小最小應(yīng)為列ESTIMATED_FLASHBACK_SIZE的數(shù)值。 該恢復(fù)區(qū)域現(xiàn)在保存著16384K字節(jié)的回閃信息(FLASHBACK_SIZE)。此估算值有助于 John分配
9、足夠的恢復(fù)區(qū)域的空間,以獲得很強(qiáng)的回閃能力。 最終出現(xiàn)的另一個(gè)問(wèn)題是,當(dāng)數(shù)據(jù)庫(kù)處于回閃模式時(shí),此記錄日志的操作需要多少空間。 另一視圖-V$FLASHBACK_DATABASE_STAT給出了到目前為止已經(jīng)收集了多少回閃信 息,如代碼清單2所示。該視圖給出了在由開(kāi)始時(shí)間和終止時(shí)間所指定的1小時(shí)間隔內(nèi)所記 錄的日志信息的總量。FLASHBACKDATA列給出在該時(shí)間間隔內(nèi)已經(jīng)產(chǎn)生了多少字節(jié)的回閃日志。所產(chǎn)生的重做(redo)日志項(xiàng)和發(fā)生了變化的數(shù)據(jù)塊已經(jīng)分別記錄在REDO_DATA 和DB_DATA中。這有助于理解回閃日志生產(chǎn)的本質(zhì)和估算所需恢復(fù)區(qū)域的大小。 如果不再需要回閃,那么John可以通過(guò)下面命令關(guān)閉它: alterdatabaseflashbackoff; 在恢復(fù)區(qū)域所生成的所有OMF文件在回閃關(guān)閉時(shí)會(huì)自動(dòng)被刪除。John通過(guò)查詢視圖 V$DATABASE中的FLASHBACK_ON列來(lái)驗(yàn)證數(shù)據(jù)庫(kù)的回閃狀態(tài)。 SQLselectflashback_onfromv$database; FLASHBACK_ON NO 結(jié)論 Oracle
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 鋼結(jié)構(gòu)景觀施工方案
- 路肩墻滑模施工方案
- 消防水池挖槽施工方案
- 氫能裝備施工方案
- 惠州市匯科源科技有限公司電源適配器的生產(chǎn)建設(shè)項(xiàng)目環(huán)評(píng)報(bào)告表
- 昌江縣公益性公墓及殯儀館建設(shè)工程(一期)項(xiàng)目環(huán)評(píng)報(bào)告表
- 甘肅巨化新材料有限公司股東全部權(quán)益價(jià)值項(xiàng)目資產(chǎn)評(píng)估報(bào)告
- 玻璃更換施工方案施工方案
- 2024-2025學(xué)年下學(xué)期高一語(yǔ)文第一單元A卷
- 東江大壩隧道施工方案
- 《酵母表達(dá)系統(tǒng)》課件
- 依法行使權(quán)利-統(tǒng)編版道德與法治八年級(jí)下冊(cè)
- 巡察工作指導(dǎo)手冊(cè)
- 2023-2024全球及中國(guó)企業(yè)組織活力報(bào)告(中文版)
- 2016-2023年北京電子科技職業(yè)學(xué)院高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
- 電磁學(xué)第四版趙凱華習(xí)題詳細(xì)解答
- 紹興文理學(xué)院開(kāi)題報(bào)告模板
- 裝卸作業(yè)安全知識(shí)培訓(xùn)課件
- 體檢中心健康知識(shí)講座
- 眼科手術(shù)配合護(hù)理查房
- 河南省2022年中考語(yǔ)文試題備用卷B卷
評(píng)論
0/150
提交評(píng)論