《《數(shù)據(jù)庫(kù)原理》作業(yè)參考答案2》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《《數(shù)據(jù)庫(kù)原理》作業(yè)參考答案2(6頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、第七次( P261)1試述事務(wù)的概念和事務(wù)的四個(gè)特性。答:事務(wù)是由一系列操作序列構(gòu)成的程序執(zhí)行單元,這些操作要么都做,要么都不做,是一個(gè)不可分割的工作單位。事務(wù)的四個(gè)特性: ACID原子性(Atomicity) :事務(wù)中包含的所有操作要么全做,要么全不做。原子性由恢復(fù)機(jī)制實(shí)現(xiàn)。一致性(Consistency) :事務(wù)的隔離執(zhí)行必須保證數(shù)據(jù)庫(kù)的一致性。事務(wù)開(kāi)始前,數(shù)據(jù)庫(kù)處于一致性的狀態(tài);事務(wù)結(jié)束后,數(shù)據(jù)庫(kù)必須仍處于一致性狀態(tài)。數(shù)據(jù)庫(kù)的一致性狀態(tài)由用戶(hù)來(lái)負(fù)責(zé)。隔離性(Isolation):系統(tǒng)必須保證事務(wù)不受其它并發(fā)執(zhí)行事務(wù)的影響。對(duì)任何一對(duì)事務(wù)T1 , T2,在T1看來(lái),T2 要么在 T1 開(kāi)始
2、之前已經(jīng)結(jié)束,要么在T1 完成之后再開(kāi)始執(zhí)行。 隔離性通過(guò)并發(fā)控制機(jī)制實(shí)現(xiàn)。持久性 (Durability) :一個(gè)事務(wù)一旦提交之后,它對(duì)數(shù)據(jù)庫(kù)的影響必須是永久的,即使系統(tǒng)出現(xiàn)故 障時(shí)也如此。系統(tǒng)發(fā)生故障不能改變事務(wù)的持久性。持久性通過(guò)恢復(fù)機(jī)制實(shí)現(xiàn)。4數(shù)據(jù)庫(kù)運(yùn)行中可能產(chǎn)生的故障有哪幾類(lèi)?哪些故障影響事務(wù)的正常執(zhí)行?哪些故障破壞數(shù)據(jù)庫(kù)數(shù)據(jù)?。答:數(shù)據(jù)庫(kù)運(yùn)行中可能產(chǎn)生三種故障:事務(wù)故障:違反完整性約束引起事務(wù)夭折;系統(tǒng)故障:軟硬件錯(cuò)誤斷電引起事務(wù)夭折;介質(zhì)故障:磁盤(pán)損壞部分或全部數(shù)據(jù)丟失。事務(wù)故障和系統(tǒng)故障影響事務(wù)的正常執(zhí)行,介質(zhì)故障破壞數(shù)據(jù)庫(kù)數(shù)據(jù)。5數(shù)據(jù)庫(kù)恢復(fù)的基本技術(shù)有哪些?答: 恢復(fù)是把數(shù)據(jù)
3、庫(kù)從錯(cuò)誤狀態(tài)恢復(fù)到某一正確狀態(tài)的功能, 從而確保數(shù)據(jù)庫(kù)的一致性?;謴?fù)的基本原理是冗余, 即數(shù)據(jù)庫(kù)中任一部分的數(shù)據(jù)可以根據(jù)存儲(chǔ)在系統(tǒng)別處的冗余數(shù)據(jù)來(lái)重建。 恢復(fù)的基本技術(shù):數(shù)據(jù)轉(zhuǎn)儲(chǔ)和登記日志文件。6數(shù)據(jù)庫(kù)轉(zhuǎn)儲(chǔ)的意義是什么?試比較各種數(shù)據(jù)轉(zhuǎn)儲(chǔ)方法。答:轉(zhuǎn)儲(chǔ)即 DBA 定期將整個(gè)數(shù)據(jù)庫(kù)復(fù)制到另一個(gè)磁盤(pán)上保存起來(lái)的過(guò)程,這些備用的數(shù)據(jù)文本稱(chēng)為 后備副本或后援副本。當(dāng)數(shù)據(jù)庫(kù)遭到破壞后可將后備副本重新裝入,恢復(fù)到轉(zhuǎn)儲(chǔ)時(shí)狀態(tài)。轉(zhuǎn)儲(chǔ)分為靜態(tài)海量轉(zhuǎn)儲(chǔ),靜態(tài)增量轉(zhuǎn)儲(chǔ),動(dòng)態(tài)海量轉(zhuǎn)儲(chǔ),動(dòng)態(tài)增量轉(zhuǎn)儲(chǔ)。7什么是日志文件?為什么要設(shè)立日志文件?答: 日志文件是用來(lái)記錄事務(wù)對(duì)數(shù)據(jù)庫(kù)的更新操作的文件, 由系統(tǒng)自動(dòng)記錄。 不同數(shù)
4、據(jù)庫(kù)采用的日志文件格式不一樣。設(shè)立日志文件的意義: 事務(wù)故障恢復(fù)和系統(tǒng)故障恢復(fù)必須用日志; 在動(dòng)態(tài)轉(zhuǎn)儲(chǔ)方式中必須轉(zhuǎn)存日志文件,由后援副本和日志結(jié)合有效恢復(fù)數(shù)據(jù)庫(kù); 在靜態(tài)轉(zhuǎn)儲(chǔ)方式中, 利用日志文件可以恢復(fù)到故障前某一時(shí)刻的正確狀態(tài)。9針對(duì)不同故障,給出恢復(fù)的策略和方法。答:事物故障的恢復(fù):利用日志文件撤消非正常終止的事務(wù),事務(wù)故障發(fā)生后由系統(tǒng)自動(dòng)完成。反向掃描日志,查找該事務(wù)的更新操作,執(zhí)行該更新操作的逆操作,繼續(xù)查找該事務(wù)其他更新操作,直到該事務(wù)的開(kāi)始標(biāo)記。系統(tǒng)故障的恢復(fù):利用日志撤消未完成的事務(wù),重做已經(jīng)完成的事務(wù),重啟系統(tǒng),由系統(tǒng)自動(dòng)完成。從頭正向掃描日志文件,找出已經(jīng)有結(jié)束標(biāo)志的事務(wù),
5、將其事務(wù)標(biāo)記為重做( REDO )隊(duì)列;同時(shí)找出沒(méi)有結(jié)束的事務(wù), 將其事務(wù)標(biāo)記為撤消 ( UNDO ) 隊(duì)列。 正向掃描日志文件, 對(duì)于每一個(gè)REDO事務(wù)重新執(zhí)行。反向掃描日志文件,對(duì)于每一個(gè)UNDO 事務(wù),執(zhí)行更新的逆操作。系統(tǒng)故障恢復(fù)的策略復(fù)雜,一般很耗時(shí)。介質(zhì)故障的恢復(fù): 重新裝入最近的數(shù)據(jù)副本和有關(guān)的日志文件副本, 然后執(zhí)行系統(tǒng)提供的恢復(fù)命令。介質(zhì)故障的恢復(fù)需要由 DBA 介入,重裝數(shù)據(jù)庫(kù)。10 什么是檢查點(diǎn)記錄,檢查點(diǎn)記錄包括哪些內(nèi)容?答:系統(tǒng)周期性的執(zhí)行檢查點(diǎn)( checkpoint ) ,做如下操作:將內(nèi)存中所有日志記錄輸出到日志文件;將內(nèi)存中所有修改了的數(shù)據(jù)快輸出到數(shù)據(jù)文件;將
6、一個(gè)日志記錄( checkpoint )輸出到日志文件,該日志記錄稱(chēng)為檢查點(diǎn)記錄。 檢查點(diǎn)記錄的內(nèi)容: 建立檢查點(diǎn)時(shí)刻所正在執(zhí)行的事務(wù)清單; 這些事務(wù)最近一個(gè)日志記錄地址。12 使用檢查點(diǎn)方法進(jìn)行恢復(fù)的步驟。答: 故障發(fā)生后, 檢查日志來(lái)確定最近的檢查點(diǎn)發(fā)生前開(kāi)始執(zhí)行的最近的事務(wù)清單。 從日志尾部由后向前掃描日志,找到第一個(gè)(checkpoint)記錄,即日志文件中最后一個(gè)( checkpoint)記錄。由最后一個(gè)(checkpoint)記錄得到該檢查點(diǎn)發(fā)生時(shí)正在執(zhí)行的事務(wù)清單1。再掃描檢查點(diǎn)之后的日志記錄,得到事務(wù)清單2 。由事務(wù)清單1 和事務(wù)清單2 組成的事務(wù)清單,對(duì)不同事務(wù)采取不同的恢復(fù)策略。13 什么是數(shù)據(jù)庫(kù)鏡像?它有什么用途?答:根據(jù) DBA 要求 DBMS 自動(dòng)把整個(gè)數(shù)據(jù)庫(kù)或其中的關(guān)鍵數(shù)據(jù)復(fù)制到另一個(gè)磁盤(pán)上,稱(chēng)為鏡像。DBMS 自動(dòng)保證鏡像數(shù)據(jù)與主數(shù)據(jù)的一致性。 鏡像可以自動(dòng)恢復(fù)數(shù)據(jù)庫(kù)關(guān)鍵數(shù)據(jù), 一旦出現(xiàn)介質(zhì)故障,可由鏡像磁盤(pán)繼續(xù)提供使用,同時(shí) DBMS 自動(dòng)利用鏡像磁盤(pán)數(shù)據(jù)進(jìn)行數(shù)據(jù)庫(kù)恢復(fù)。實(shí)際應(yīng)用中,往 往只對(duì)關(guān)鍵數(shù)據(jù)和日志文件鏡像,而不對(duì)整個(gè)數(shù)據(jù)庫(kù)鏡像。