版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
7.3數(shù)據(jù)庫恢復(fù)技術(shù)本章主要內(nèi)容:(1)事務(wù):事務(wù)的概念、事務(wù)的ACID性質(zhì)、事務(wù)的狀態(tài)變遷圖(2)數(shù)據(jù)科的并發(fā)控制:并發(fā)操作產(chǎn)生的3類問題、鎖(3)數(shù)據(jù)庫的恢復(fù)技術(shù):重復(fù)存儲、寫日志(4)數(shù)據(jù)庫的完整性控制:數(shù)據(jù)的正確性、有效性和相容性(5)數(shù)據(jù)庫的安全性控制:合法用法的授權(quán)訪問7.3數(shù)據(jù)庫恢復(fù)技術(shù)數(shù)據(jù)庫系統(tǒng)在運(yùn)行時,很多因素,例如,軟件錯誤、硬件損壞、電源故障、機(jī)房失火、炮炸,甚至人為破壞等,都可能導(dǎo)致系統(tǒng)出現(xiàn)故障,并出現(xiàn)數(shù)據(jù)丟失的情況。DBMS的恢復(fù)管理子系統(tǒng)采取許多措施,保證在任何情況下保持事務(wù)的原子性和持久性,確保數(shù)據(jù)不丟失、不破壞。定義7-6數(shù)據(jù)庫系統(tǒng)能把數(shù)據(jù)庫從被破壞、不正確的狀態(tài)恢復(fù)到最近一個正確的狀態(tài),DBMS的這種能力稱為數(shù)據(jù)庫的可恢復(fù)性(Recovery)。
數(shù)據(jù)恢復(fù)的基本原理非常簡單,就是冗余。其中最常用的技術(shù)就是數(shù)據(jù)備份(backup)和記錄日志文件(log)。7.3數(shù)據(jù)庫恢復(fù)技術(shù)日志管理器負(fù)責(zé)用戶對數(shù)據(jù)庫的操作做好日志記錄,同時利用DBMS提供的功能,不停地做好數(shù)據(jù)庫備份。這兩點(diǎn)是數(shù)據(jù)庫恢復(fù)的基礎(chǔ)。一旦故障發(fā)生,利用備份文件進(jìn)行還原,在還原的基礎(chǔ)上利用日志文件進(jìn)行恢復(fù),重新建立一個完整的數(shù)據(jù)庫?;謴?fù)的具體細(xì)節(jié),與數(shù)據(jù)庫發(fā)生的故障種類有關(guān)。
7.3.1故障的種類數(shù)據(jù)庫系統(tǒng)在運(yùn)行中,可能會發(fā)生各種各樣的故障,大致可分4類。
1.事務(wù)故障事務(wù)在執(zhí)行過程中發(fā)生的故障,稱為事務(wù)故障。此類故障只發(fā)生在單個或多個事務(wù)上,系統(tǒng)能夠正常運(yùn)行,其他事務(wù)不受影響。事務(wù)故障又分兩種:(1)可以預(yù)期的事務(wù)故障。通過程序本身可以發(fā)現(xiàn),利用Rollback回滾事務(wù),即可。例如例題7-1中的16行源代碼,銀行轉(zhuǎn)賬余額不足。
(2)不可預(yù)期的事務(wù)故障。指在程序中未估計(jì)到的錯誤,例如,運(yùn)算溢出、違反數(shù)據(jù)完整性約束、并發(fā)事務(wù)產(chǎn)生死鎖后被系統(tǒng)強(qiáng)制撤銷等。此時由系統(tǒng)直接對該事務(wù)進(jìn)行Undo(撤銷)處理。
7.3.1故障的種類
2.系統(tǒng)故障引起系統(tǒng)停止運(yùn)轉(zhuǎn)、隨之要求系統(tǒng)必須重新啟動的事件,稱為“系統(tǒng)故障”。例如,硬件故障、軟件錯誤(包括DBMS、OS或應(yīng)用程序)、突然停電等。系統(tǒng)故障會影響正在運(yùn)行的所有事務(wù),這些事務(wù)都是非正常終止,有些事務(wù)完成了提交,有些事務(wù)完成了部分提交,有些事務(wù)還在緩沖區(qū)內(nèi)沒有提交,這樣可能破壞數(shù)據(jù)庫的完整性,但不破壞整個數(shù)據(jù)庫。一般情況下,DBMS的恢復(fù)子系統(tǒng)必須在系統(tǒng)重新啟動時,對那些非正常終止的事務(wù)進(jìn)行處理,把數(shù)據(jù)庫恢復(fù)到正確狀態(tài)即可。
7.3.1故障的種類3.介質(zhì)故障硬盤上的數(shù)據(jù)庫遭到破壞,使得數(shù)據(jù)庫系統(tǒng)無法正常運(yùn)行,這類故障稱為“介質(zhì)故障”,也稱硬故障。例如,硬盤損壞、磁頭碰撞等。發(fā)生這類故障時,一般使用最近的備份文件,還原數(shù)據(jù),然后利用日志進(jìn)行恢復(fù)。計(jì)算機(jī)病毒是一種人為的故障或破壞,它是由某些人惡意編制的計(jì)算機(jī)程序,會像病毒一樣進(jìn)行傳播,并對數(shù)據(jù)庫系統(tǒng)造成嚴(yán)重破壞。
4.計(jì)算機(jī)病毒
7.3.2數(shù)據(jù)恢復(fù)的實(shí)現(xiàn)技術(shù)數(shù)據(jù)恢復(fù)機(jī)制涉及兩個問題:一是如何做數(shù)據(jù)備份,二是如何利用備份文件進(jìn)行數(shù)據(jù)庫恢復(fù)。其中,建立數(shù)據(jù)庫備份最常用的技術(shù)是:數(shù)據(jù)轉(zhuǎn)儲和記錄數(shù)據(jù)庫操作日志。數(shù)據(jù)庫轉(zhuǎn)儲是指數(shù)據(jù)庫管理員(DBA)定期地將整個數(shù)據(jù)庫復(fù)制到另一個磁盤或磁帶上保存起來。這些稱為數(shù)據(jù)庫的備份文件。一旦當(dāng)數(shù)據(jù)庫發(fā)生故障而無法自動修復(fù)時,就可以利用最近的備份文件,進(jìn)行數(shù)據(jù)庫恢復(fù)。這種方法,只能恢復(fù)轉(zhuǎn)儲時的數(shù)據(jù)庫狀態(tài),轉(zhuǎn)儲后的數(shù)據(jù)無法直接恢復(fù),這時就要依賴日志文件進(jìn)行恢復(fù),而且還有看故障的破壞程度。
1.數(shù)據(jù)轉(zhuǎn)儲
7.3.2數(shù)據(jù)恢復(fù)的實(shí)現(xiàn)技術(shù)數(shù)據(jù)庫轉(zhuǎn)儲分:靜態(tài)轉(zhuǎn)儲和動態(tài)轉(zhuǎn)儲。一般DBMS都提供有數(shù)據(jù)庫備份的語句,或功能。例如,在MySQLWorkbench中,點(diǎn)擊如圖7-7中的DataExport(數(shù)據(jù)導(dǎo)出),可以對所選擇的數(shù)據(jù)庫進(jìn)行備份。一旦發(fā)生介質(zhì)故障,就可以用備份的文件,進(jìn)行數(shù)據(jù)庫恢復(fù)。
靜態(tài)轉(zhuǎn)儲,也稱數(shù)據(jù)庫備份,是指數(shù)據(jù)庫在沒有任何事務(wù)操作的狀態(tài)下,數(shù)據(jù)庫文件的復(fù)制,比較簡單,但能獲得一致性的副本。靜態(tài)轉(zhuǎn)儲需要經(jīng)常定期或不定期進(jìn)行,每次都比較耗時,故DBA一般選擇在晚上進(jìn)行。每次備份后,僅能保存當(dāng)時的數(shù)據(jù)庫,不含備份后操作數(shù)據(jù)庫的狀態(tài)。
7.3.2數(shù)據(jù)恢復(fù)的實(shí)現(xiàn)技術(shù)
7.3.2數(shù)據(jù)恢復(fù)的實(shí)現(xiàn)技術(shù)
7.3.2數(shù)據(jù)恢復(fù)的實(shí)現(xiàn)技術(shù)動態(tài)轉(zhuǎn)儲,是指允許其他事務(wù)對數(shù)據(jù)庫進(jìn)行操作的同時進(jìn)行數(shù)據(jù)庫的復(fù)制,這一般涉及到檢查點(diǎn)技術(shù)。日志文件是用來記錄事務(wù)對數(shù)據(jù)庫更新的文件。不同的數(shù)據(jù)庫系統(tǒng)采用的日志文件格式并不完全相同。概括起來有兩種格式:以記錄為單位形成日志文件、或以數(shù)據(jù)塊為單位的日記文件。
2.記錄日志文件
7.3.2數(shù)據(jù)恢復(fù)的實(shí)現(xiàn)技術(shù)日志文件主要用于數(shù)據(jù)庫恢復(fù)。主要作用有:(1)在事務(wù)故障和系統(tǒng)故障的恢復(fù)時必須使用日志文件進(jìn)行撤銷(Undo)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《電路分析基礎(chǔ)試題》課件
- 《微觀經(jīng)濟(jì)學(xué)》考試試卷試題及參考答案
- 《專業(yè)英語(計(jì)算機(jī)英語)》復(fù)習(xí)題
- 八下期末考拔高測試卷(5)(原卷版)
- 《誠邀創(chuàng)業(yè)伙伴》課件
- 2012年高考語文試卷(安徽)(解析卷)
- 父母課堂與教育理念分享計(jì)劃
- 購物中心導(dǎo)購員服務(wù)總結(jié)
- 水產(chǎn)養(yǎng)殖行業(yè)銷售工作總結(jié)
- 娛樂場館衛(wèi)生要素
- 2024年中國大數(shù)據(jù)企業(yè)排行榜V9.0(大數(shù)據(jù)產(chǎn)業(yè)白皮書)-中國民營科技促進(jìn)會
- 2025年統(tǒng)編版高考政治一輪復(fù)習(xí):選擇性必修1、2、3共3冊必背考點(diǎn)知識點(diǎn)匯編
- 貨物交接單和交接合同
- 期末復(fù)習(xí)試題 (試卷)-2024-2025學(xué)年四年級上冊數(shù)學(xué)人教版
- 七年級語文下冊專項(xiàng)練習(xí)知識(對聯(lián))
- MOOC 知識圖譜導(dǎo)論-浙江大學(xué) 中國大學(xué)慕課答案
- 2016-2017學(xué)年天津市部分區(qū)九年級(上)期末化學(xué)試卷
- 培智五年級上次數(shù)學(xué)期末考試題
- 國家開放大學(xué)電大??啤队⒄Z教學(xué)法》2023-2024期末試題及答案(試卷代號:2145)
- 管樁水平承載力計(jì)算
- 事業(yè)單位領(lǐng)導(dǎo)班子考核測評表
評論
0/150
提交評論