《數(shù)據(jù)庫(kù)原理及應(yīng)用》總復(fù)習(xí)_第1頁(yè)
《數(shù)據(jù)庫(kù)原理及應(yīng)用》總復(fù)習(xí)_第2頁(yè)
《數(shù)據(jù)庫(kù)原理及應(yīng)用》總復(fù)習(xí)_第3頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余12頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、數(shù)據(jù)庫(kù)并發(fā)單選題1. 下面( )不是數(shù)據(jù)庫(kù)系統(tǒng)必須提供的數(shù)據(jù)控制功能。A.安全性 B .可移植性C.完整性 D .并發(fā)控制答案: B2保護(hù)數(shù)據(jù)庫(kù),防止未經(jīng)授權(quán)的或不合法的使用造成的數(shù)據(jù)泄漏、更改破壞。這是指數(shù)據(jù) 的( )。A 安全性答案: AB 完整性C 并發(fā)控制D 恢復(fù)3數(shù)據(jù)庫(kù)的()是指數(shù)據(jù)的正確性和相容性。A 安全性答案: BB 完整性C 并發(fā)控制D恢復(fù)4在數(shù)據(jù)系統(tǒng)中,對(duì)存取權(quán)限的定義稱為()。A 命令答案: BB 授權(quán)C 定義D審計(jì)5數(shù)據(jù)庫(kù)管理系統(tǒng)通常提供授權(quán)功能來(lái)控制不同用戶訪問(wèn)數(shù)據(jù)的權(quán)限 ,這主要是為了實(shí)現(xiàn)數(shù)據(jù)庫(kù)的()。A 可靠性答案: DB 一致性C 完整性D安全性6授權(quán)編譯系統(tǒng)和

2、合法性檢查機(jī)制一起組成了()子系統(tǒng)。A 安全性B 完整性C 并發(fā)控制D恢復(fù)答案: A7. ( )是用戶定義的一個(gè)數(shù)據(jù)庫(kù)操作序列,這些操作要么全做要么全不做,是一個(gè)不可 分割的工作單位A.程序B.命令C.事務(wù)D.文件答案: C8. 事務(wù)的原子性是指( )。A. 事務(wù)中包括的所有操作要么都做,要么都不做B. 事務(wù)一旦提交,對(duì)數(shù)據(jù)庫(kù)的改變是永久的C. 一個(gè)事務(wù)內(nèi)部的操作及使用的數(shù)據(jù)對(duì)并發(fā)的其他事務(wù)是隔離的D. 事務(wù)必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài) 答案: A9. 事務(wù)的持續(xù)性是指( )。A. 事務(wù)中包括的所有操作要么都做,要么都不做B. 事務(wù)一旦提交,對(duì)數(shù)據(jù)庫(kù)的改變是永久的C. 一

3、個(gè)事務(wù)內(nèi)部的操作及使用的數(shù)據(jù)對(duì)并發(fā)的其他事務(wù)是隔離的D. 事務(wù)必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài)答案: B10. 事務(wù) 是數(shù)據(jù)庫(kù)操作的基本工作單位。 如果一個(gè)事務(wù)執(zhí)行成功, 則全部更新提交; 如果一個(gè)事務(wù)執(zhí)行失敗,了數(shù)據(jù)庫(kù)處于(則已做過(guò)的更新被恢復(fù)原狀,)狀態(tài)。好像整個(gè)事務(wù)從未有過(guò)這些更新,這樣保持A 安全性 B 一致性C 完整性D 可靠性答案: B11. 多用戶的數(shù)據(jù)庫(kù)系統(tǒng)的目標(biāo)之一是使它的每個(gè)用戶好像面對(duì)著一個(gè)單用戶的數(shù)據(jù)庫(kù)一 樣使用它,為此,數(shù)據(jù)庫(kù)系統(tǒng)必須進(jìn)行()。A 安全性控制 B 完整性控制 C 并發(fā)控制 D 可靠性控制答案: C12. 對(duì)并發(fā)操作若不加以控制,可能會(huì)

4、帶來(lái)()問(wèn)題。A. 不安全B.死鎖C 死機(jī)D.數(shù)據(jù)不一致答案:D13. 并發(fā)操作會(huì)帶來(lái)的數(shù)據(jù)不一致性有()。A. 丟失修改、不可重復(fù)讀、讀臟數(shù)據(jù)、死鎖B. 不可重復(fù)讀、讀臟數(shù)據(jù)、死鎖C. 丟失修改、讀臟數(shù)據(jù)、死鎖D. 丟失修改、不可重復(fù)讀、讀臟數(shù)據(jù) 答案:D14. 有兩個(gè)事務(wù)T1、T2 ,其并發(fā)操作如圖所示,下面評(píng)價(jià)正確的是()。A .該操作不存在問(wèn)題B .該操作丟失修改C.該操作不能重復(fù)讀D.該操作讀"臟”數(shù)據(jù)答案:BT1T2讀A=10讀 A=10A=A-5寫(xiě)回A=A-8寫(xiě)回15. 設(shè)有兩個(gè)事務(wù) T1、T2,其并發(fā)操作如下所示,下面評(píng)價(jià)正確的是()。A .該操作不存在問(wèn)題B .該操

5、作丟失修改C.該操作不能重復(fù)讀D .該操作讀"臟”數(shù)據(jù)答案:CT1T2 讀 A=10 , B=5 讀A=10A=A*2寫(xiě)回 讀 A=20 , B=5求和25驗(yàn)證錯(cuò)16. 設(shè)有兩個(gè)事務(wù) T1、T2,其并發(fā)操作如下所示,下列評(píng)價(jià)正確的是()。A .該操作不存在問(wèn)題B .該操作丟失修改C.該操作不能重復(fù)讀D .該操作讀"臟”數(shù)據(jù)答案:DT1T2 讀A=100A=A*2寫(xiě)回 讀A=200 ROLLBACK恢復(fù)A=10017. 解決并發(fā)操作帶來(lái)的數(shù)據(jù)不一致性問(wèn)題普遍采用()。A. 封鎖B.恢復(fù)C .存取控制D.協(xié)商答案:A18. 若事務(wù)T對(duì)數(shù)據(jù)R已經(jīng)加X(jué)鎖,則其他事務(wù)對(duì)數(shù)據(jù)R ()。

6、A .可以加S鎖不能加X(jué)鎖B .不能加S鎖可以加X(jué)鎖C.可以加S鎖也可以加X(jué)鎖D .不能加任何鎖答案: D19不允許任何其他事務(wù)對(duì)這個(gè)鎖定目標(biāo)再加任何類型的鎖是()。A .共享鎖B .排它鎖C .共享鎖或排它鎖D .以上都不是答案: B20數(shù)據(jù)庫(kù)中的封鎖機(jī)制是()的主要方法。A 完整性B 安全性C 并發(fā)控制D 恢復(fù)答案: C21關(guān)于“死鎖” ,下列說(shuō)法中正確的是()。A .死鎖是操作系統(tǒng)中的問(wèn)題,數(shù)據(jù)庫(kù)操作中不存在B .在數(shù)據(jù)庫(kù)操作中防止死鎖的方法是禁止兩個(gè)用戶同時(shí)操作數(shù)據(jù)庫(kù)C.當(dāng)兩個(gè)用戶競(jìng)爭(zhēng)相同資源時(shí)不會(huì)發(fā)生死鎖D 只有出現(xiàn)并發(fā)操作時(shí),才有可能出現(xiàn)死鎖 答案: D22若數(shù)據(jù)庫(kù)中只包含成功事務(wù)

7、提交的結(jié)果,則此數(shù)據(jù)庫(kù)就稱為處于()狀態(tài)。A .安全B、. 一致C.不安全D .不一致答案: B23若系統(tǒng)在運(yùn)行過(guò)程中,由于某種原因,造成系統(tǒng)停止運(yùn)行,致使事務(wù)在執(zhí)行過(guò)程中以非 控制方式終止,這時(shí)內(nèi)存中的信息丟失,而存儲(chǔ)在外存上的數(shù)據(jù)未受影響,這種情況稱為 ( )。A 事務(wù)故障B .系統(tǒng)故障C 介質(zhì)故障D 運(yùn)行故障答案: B 24若系統(tǒng)在運(yùn)行過(guò)程中, 由于某種硬件故障, 使存儲(chǔ)在外存上的數(shù)據(jù)部分損失或全部損失, 這種情況稱為( )。A 事務(wù)故障 B 系統(tǒng)故障 C 介質(zhì)故障 D 運(yùn)行故障 答案: C25操作系統(tǒng)故障屬于()。A .人為錯(cuò)誤B .事務(wù)故障C .介質(zhì)故障D.系統(tǒng)故障答案: D26 (

8、 )用來(lái)記錄對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)進(jìn)行的每一次更新操作。A 后援副本 B 日志文件 答案: B27 后援副本的用途是( )。A 安全性保障 B 一致性控制 答案: C28 用于數(shù)據(jù)庫(kù) 恢復(fù) 的重要文件是( A 數(shù)據(jù)庫(kù)文件 B 索引文件 答案: C29 日志文件是用于記錄( )。 A 程序運(yùn)行過(guò)程C 對(duì)數(shù)據(jù)的所有更新操作 答案: CC數(shù)據(jù)庫(kù)D 緩沖區(qū)C故障后的恢復(fù)D 數(shù)據(jù)的轉(zhuǎn)儲(chǔ))。C日志文件D 備注文件B 數(shù)據(jù)操作D 程序執(zhí)行的結(jié)果30 數(shù)據(jù)庫(kù)恢復(fù)的基礎(chǔ)是利用轉(zhuǎn)儲(chǔ)的冗余數(shù)據(jù)。這些轉(zhuǎn)儲(chǔ)的冗余數(shù)據(jù)包括()。A 數(shù)據(jù)字典、應(yīng)用程序、審計(jì)檔案、數(shù)據(jù)庫(kù)后備副本B 數(shù)據(jù)字典、應(yīng)用程序、日志文件、審計(jì)檔案C 日志文件

9、、數(shù)據(jù)庫(kù)后備副本D 數(shù)據(jù)字典、應(yīng)用程序、數(shù)據(jù)庫(kù)后備副本答案: C31 ( )是指在轉(zhuǎn)儲(chǔ)過(guò)程中, 不允許其他事務(wù)對(duì)數(shù)據(jù)庫(kù)進(jìn)行存取或修改操作,并且每次只 轉(zhuǎn)儲(chǔ)上一次轉(zhuǎn)儲(chǔ)后更新過(guò)的數(shù)據(jù)。C.靜態(tài)海量轉(zhuǎn)儲(chǔ)D.靜態(tài)增量轉(zhuǎn)儲(chǔ)答案: D32以下 ()封鎖違反兩段鎖協(xié)議。A. Slock A Slock B Xlock C.U nlock A Un lock B Un lock CB. Slock A Slock B Xlock C Un lock C Un lock B Un lock AC. Slock A Slock B Xlock C Un lock B Un lock C Un lock AD. S

10、lock A Un lock A Slock B Xlock C Unlock B Un lock C答案: D多選題A 原子性B 一致性C隔離性答案: ABCD2 并發(fā)操作可能會(huì)帶來(lái)的數(shù)據(jù)不一致性有()。A 丟失修改B 不可重復(fù)讀C讀臟數(shù)據(jù)答案: ABC3 關(guān)于“死鎖”,下列說(shuō)法中錯(cuò)誤的是()。1 事務(wù)的特性有()。A.死鎖是操作系統(tǒng)中的問(wèn)題,數(shù)據(jù)庫(kù)操作中不存在D.持續(xù)性D.死鎖B. 在數(shù)據(jù)庫(kù)操作中防止死鎖的方法是禁止兩個(gè)用戶同時(shí)操作數(shù)據(jù)庫(kù)C. 當(dāng)兩個(gè)用戶競(jìng)爭(zhēng)相同資源時(shí)不會(huì)發(fā)生死鎖D. 并發(fā)控制的目的就是消除死鎖答案: ABCD4 封鎖機(jī)制是并發(fā)控制的主要手段, ( ) 封鎖協(xié)議不但能夠防止

11、丟失修改,還可進(jìn)一步 防止讀“臟”數(shù)據(jù)。A. 級(jí)B.二級(jí)C .三級(jí)D.都可以答案: BC5. 若事務(wù)T對(duì)數(shù)據(jù)R已加X(jué)鎖,則其他事務(wù)對(duì)數(shù)據(jù)R()。A.可以加S鎖B.不能加S鎖C.可以加X(jué)鎖答案: BD6. 在SQL Server中,有關(guān)頁(yè)的敘述中正確的是()。A. 頁(yè)是除行外的最小數(shù)據(jù)單位B. 個(gè)頁(yè)有8KBC. 表中的行不能跨頁(yè)存放,一行的數(shù)據(jù)必須在同一個(gè)頁(yè)上D. 8個(gè)連續(xù)的頁(yè)稱為1個(gè)簇 答案: ABCDD 不能加任何鎖7 數(shù)據(jù)庫(kù)恢復(fù)通常采用的方法是()。A 建立檢查點(diǎn)B 建立副本答案: ABCC 建立日志文件D 建立索引8 數(shù)據(jù)庫(kù)系統(tǒng)中可能發(fā)生的故障()。D 介質(zhì)故障A 運(yùn)行故障B 事務(wù)故障

12、C 系統(tǒng)故障答案: BCD9 系統(tǒng)故障是指造成系統(tǒng)停止運(yùn)轉(zhuǎn),必須重新啟動(dòng)系統(tǒng)的任何事件,它包括以下()幾種情況。A 計(jì)算機(jī)病毒C DBMS 代碼錯(cuò)誤答案: BCDB 操作系統(tǒng)故障D 數(shù)據(jù)庫(kù)服務(wù)器出錯(cuò)三、填空題1. 事務(wù)通常是以開(kāi)始,以表示正常結(jié)束,以 結(jié)束表示對(duì)數(shù)據(jù)庫(kù)的所有已完成的操作全部撤消,回滾到事務(wù)開(kāi)始時(shí)的狀態(tài)。答案: BEGIN TRANSACTION COMMIT ROLLBACK2. 如果數(shù)據(jù)庫(kù)中只包含成功事務(wù)提交的結(jié)果,就說(shuō)數(shù)據(jù)庫(kù)處于_一致性 _狀態(tài)。答案:一致性3. 數(shù)據(jù)庫(kù)中解決活鎖問(wèn)題的方法是 。解決死鎖問(wèn)題主要有兩類方法:一類方法是 ;另一類方法是。答案:先來(lái)先服務(wù)預(yù)防死鎖

13、 允許發(fā)生死鎖,然后解除之4. 封鎖機(jī)制是并發(fā)控制的主要手段。封鎖機(jī)制中有兩種基本類型的鎖,他們是排它鎖和。答案:共享鎖5. 封鎖具有3個(gè)環(huán)節(jié):第一個(gè)環(huán)節(jié)是申請(qǐng)加鎖;第二個(gè)環(huán)節(jié)是;第三個(gè)環(huán)節(jié)是。答案:獲得鎖釋放鎖6. 若事務(wù)T對(duì)數(shù)據(jù)對(duì)象A加了 S鎖,則其他事務(wù)只能對(duì)數(shù)據(jù)A再加,不能再加,直到事務(wù)T釋放A上的鎖。答案:S鎖X鎖7. 并發(fā)操作可能帶來(lái)的數(shù)據(jù)不一致性,最根本的原因是違背了 _隔離性 c答案:事務(wù)的隔離性8. “事務(wù)T在讀取數(shù)據(jù)之前必須先對(duì)其加 S鎖,在要修改數(shù)據(jù)之前必須先對(duì)其加X(jué)鎖,直到事務(wù)結(jié)束后才釋放所有鎖?!边@是 級(jí)封鎖協(xié)議。答案:三9. 封鎖粒度是指封鎖對(duì)象的大小。封鎖粒度與系

14、統(tǒng)的并發(fā)度和并發(fā)控制的開(kāi)銷密切相關(guān)。封鎖的粒度越小,并發(fā)度越,系統(tǒng)開(kāi)銷也越;封鎖的粒度越大,并發(fā)度越,系統(tǒng)開(kāi)銷也越。答案:高大低 小10. SQL Server遵從級(jí)封鎖協(xié)議,從而有效地控制并發(fā)操作可能產(chǎn)生的丟失更新、讀“臟”數(shù)據(jù)、不可重復(fù)讀等錯(cuò)誤。答案:三11 數(shù)據(jù)恢復(fù)最常用的技術(shù)是建立數(shù)據(jù)轉(zhuǎn)儲(chǔ)和利用 。答案:日志文件12. 為保證數(shù)據(jù)庫(kù)的可恢復(fù)性,登記日志文件時(shí)必須遵循兩條原則:一是登記的次序嚴(yán)格按事務(wù)執(zhí)行的時(shí)間次序;二是 。答案:先寫(xiě)日志文件,后寫(xiě)數(shù)據(jù)庫(kù)13. 事務(wù)故障的解決辦法是恢復(fù)程序在不影響其他事務(wù)運(yùn)行的情況下。答案:撤銷該事務(wù)14. 日志文件是用來(lái)記錄對(duì)數(shù)據(jù)庫(kù)的更新操作的文件。不

15、同的數(shù)據(jù)庫(kù)系統(tǒng)采用的日志文件格式不完全相同。日志文件主要有以記錄為單位的日志文件和 。答案:以數(shù)據(jù)塊為單位的日志文件15. 會(huì)破壞磁盤(pán)上的物理數(shù)據(jù)庫(kù)和日志文件,這是最嚴(yán)重的一種故障?;謴?fù)方法是重裝數(shù)據(jù)庫(kù)后備副本,然后重做已完成的事務(wù)。答案:介質(zhì)故障17. 語(yǔ)句可以完成對(duì)整個(gè)數(shù)據(jù)庫(kù)的恢復(fù),也可以恢復(fù)數(shù)據(jù)庫(kù)的日志,或者是指定恢復(fù)數(shù)據(jù)庫(kù)的某個(gè)文件或文件組。答案:RESTORE1 & 數(shù)據(jù)庫(kù)保護(hù)包含數(shù)據(jù)的 。答案:安全性、完整性、并發(fā)控制、恢復(fù)20. 保護(hù)數(shù)據(jù)安全性的一般方法是.答案:設(shè)置用戶標(biāo)識(shí)和存取權(quán)限控制21. 數(shù)據(jù)的安全性是指 。 答案:保護(hù)數(shù)據(jù)庫(kù),防止未經(jīng)授權(quán)的,或不合法的使用造成的

16、數(shù)據(jù)泄漏、更改或破壞22. 安全性控制的一般方法有、和視圖的保護(hù)五級(jí)安全措施。答案:用戶標(biāo)識(shí)鑒定存取控制審計(jì)數(shù)據(jù)加密23. 存取權(quán)限包括兩方面的內(nèi)容,一個(gè)是,另一個(gè)是。答案:要存取的數(shù)據(jù)對(duì)象對(duì)此數(shù)據(jù)對(duì)象進(jìn)行操作的類型24. 和一起組成了安全性系統(tǒng)。答案:授權(quán)編譯系統(tǒng)合法權(quán)檢查機(jī)制25. 是DBMS的基本單位,它是用戶定義的一組邏輯一致的操作序列。答案:事務(wù)26. DBMS的基本工作單位是事務(wù),它是用戶定義的一組邏輯一致的操作序列;并發(fā)控制的主要方法是 機(jī)制。答案:封27. 有兩種基本類型的鎖,它們是 和。答案:共享鎖排它鎖28. 對(duì)并發(fā)操作若不加以控制,可能帶來(lái)的不一致性有、和。答案:丟失修改

17、不能重復(fù)讀讀“臟”數(shù)據(jù)29. 并發(fā)控制是對(duì)用戶的 加以控制和協(xié)調(diào)。答案:并發(fā)操作30. 并發(fā)控制的主要方法是采用 機(jī)制,其類型有 和 兩種。答案:封鎖排它鎖(或X鎖) 共享鎖(或S鎖)31. 若事務(wù)T對(duì)數(shù)據(jù)對(duì)象 A加了 S鎖,則其他事務(wù)只能對(duì)數(shù)據(jù) A再加 ,不能 加 ,直到事務(wù)T釋放A上的鎖。答案:S鎖X鎖32. 若事務(wù)在運(yùn)行過(guò)程中,由于種種原因,使事務(wù)未運(yùn)行到正常終止點(diǎn)之間就被撤消,這種情況就稱為。答案:事務(wù)故障 33數(shù)據(jù)庫(kù)恢復(fù)是將數(shù)據(jù)庫(kù)從狀態(tài)恢復(fù)到的功能。答案:錯(cuò)誤某一已知的正確狀態(tài)34. 系統(tǒng)在運(yùn)行過(guò)程中, 由于某種原因,造成系統(tǒng)停止運(yùn)行, 致使事務(wù)在執(zhí)行過(guò)程中以非控 制方式終止,這時(shí)內(nèi)

18、存中的信息丟失,而存儲(chǔ)在外存上的數(shù)據(jù)不受影響,這種情況稱為。答案:系統(tǒng)故障35. 系統(tǒng)在運(yùn)行運(yùn)程中,由于某種硬件故障,使存儲(chǔ)在外存上的數(shù)據(jù)部分損失或全部損失,這種情況稱為。答案:介質(zhì)故障36. 數(shù)據(jù)庫(kù)系統(tǒng)在運(yùn)行過(guò)程中,可能會(huì)發(fā)生故障。故障主要有 、介質(zhì)故障和 四類。答案:事務(wù)故障系統(tǒng)故障計(jì)算機(jī)病毒37. 數(shù)據(jù)庫(kù)系統(tǒng)在運(yùn)行過(guò)程中,可能會(huì)發(fā)生各種故障, 其故障對(duì)數(shù)據(jù)庫(kù)的影響總結(jié)起來(lái)有兩 類: 和 。答案:數(shù)據(jù)庫(kù)本身被破壞數(shù)據(jù)庫(kù)處于不一致?tīng)?8. 數(shù)據(jù)庫(kù)系統(tǒng)是利用存儲(chǔ)在外存上其他地方的來(lái)重建被破壞的數(shù)據(jù)庫(kù)。 它主要有兩種: 和 。答案:冗余數(shù)據(jù)后援副本日志文件39. 制作后援副本的過(guò)程稱為。它又分為

19、 和 。答案:轉(zhuǎn)儲(chǔ)增量轉(zhuǎn)儲(chǔ)日志文件40. 事務(wù)故障、系統(tǒng)故障的恢復(fù)是由 完成的,介質(zhì)故障是由 完成的。答案:系統(tǒng)自動(dòng)DBA執(zhí)行恢復(fù)操作過(guò)程41. 數(shù)據(jù)庫(kù)中數(shù)據(jù)的完整性 包括 、 和。答案:實(shí)體完整性參照完整性用戶自定義的完整性42. 實(shí)體完整性是指在基本表中, 。答案:主屬性不能取空值43. 參照完整性是指在基本表中, 。答案:外碼可以是空值或者另一個(gè)關(guān)系主碼的有效值44. 為了保護(hù)數(shù)據(jù)庫(kù)的實(shí)體完整性,當(dāng)用戶程序?qū)χ鞔a進(jìn)行更新使主碼值不惟一時(shí),DBMS就。答案:拒絕此操作45. 在數(shù)據(jù)庫(kù)系統(tǒng)中對(duì)存取權(quán)限的定義稱為 。答案:授權(quán)46. 在SQL語(yǔ)言中,為了數(shù)據(jù)庫(kù)的安全性,設(shè)置了對(duì)數(shù)據(jù)的存取進(jìn)行控

20、制的語(yǔ)句,對(duì)用戶授權(quán)使用 語(yǔ)句,收回所授的權(quán)限使用語(yǔ)句。答案:GRANT REVOKE四、簡(jiǎn)答題1. 試述事務(wù)的概念及事務(wù)的4個(gè)特性。答:事務(wù)是用戶定義的一個(gè)數(shù)據(jù)庫(kù)操作序列,這些操作要么全做要么全不做,是一個(gè)不可分割的工作單位。事務(wù)具有 4個(gè)特性:原子性(Atomicity )、一致性(consistency )、隔離性(Isolation )和 持續(xù)性(Durability )。這4個(gè)特性也簡(jiǎn)稱為 ACID 特性。原子性:事務(wù)是數(shù)據(jù)庫(kù)的邏輯工作單位,事務(wù)中包括的諸操作要么都做,要么都不做。 一致性:事務(wù)執(zhí)行的結(jié)果必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài)。 隔離性:一個(gè)事務(wù)的執(zhí)行不能

21、被其他事務(wù)干擾。即一個(gè)事務(wù)內(nèi)部的操作及使用的數(shù)據(jù)對(duì)其他并發(fā)事務(wù)是隔離的,并發(fā)執(zhí)行的各個(gè)事務(wù)之間不能互相干擾。持續(xù)性:持續(xù)性也稱永久性(Perfnanence ),指一個(gè)事務(wù)一旦提交,它對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的改變就應(yīng)該是永久性的。接下來(lái)的其他操作或故障不應(yīng)該對(duì)其執(zhí)行結(jié)果有任何影響。2. 在數(shù)據(jù)庫(kù)中為什么要并發(fā)控制?答:數(shù)據(jù)庫(kù)是共享資源,通常有許多個(gè)事務(wù)同時(shí)在運(yùn)行。當(dāng)多個(gè)事務(wù)并發(fā)地存取數(shù)據(jù)庫(kù)時(shí)就會(huì)產(chǎn)生同時(shí)讀取和/或修改同一數(shù)據(jù)的情況。若對(duì)并發(fā)操作不加控制就可能會(huì)存取和存儲(chǔ)不正確的數(shù)據(jù),破壞數(shù)據(jù)庫(kù)的一致性。所以數(shù)據(jù)庫(kù)管理系統(tǒng)必須提供并發(fā)控制機(jī)制。3. 并發(fā)操作可能會(huì)產(chǎn)生哪幾類數(shù)據(jù)不一致?用什么方法能避免各

22、種不一致的情況?答:并發(fā)操作帶來(lái)的數(shù)據(jù)不一致性包括三類:丟失修改(lost update )、不可重復(fù)讀(Non Repeatable Read )和讀"臟'數(shù)據(jù)( Dirty Read )。(I )丟失修改是指兩個(gè)事務(wù)Tl和T2讀入同一數(shù)據(jù)并修改,T2提交的結(jié)果破壞了(覆蓋了) Tl提交的結(jié)果,導(dǎo)致 Tl的修改被丟失。(2 )不可重復(fù)讀是指事務(wù)TI讀取數(shù)據(jù)后,事務(wù) T2執(zhí)行更新操作,使 Tl無(wú)法再現(xiàn)前一次讀取結(jié)果。(3 )讀“臟”數(shù)據(jù)是指事務(wù) Tl修改某一數(shù)據(jù),并將其寫(xiě)回磁盤(pán),事務(wù) T2讀取同一數(shù)據(jù) 后,Tl由于某種原因被撤銷,這時(shí) Tl已修改過(guò)的數(shù)據(jù)恢復(fù)原值, T2讀到的

23、數(shù)據(jù)就與數(shù) 據(jù)庫(kù)中的數(shù)據(jù)不一致,則 T2讀到的數(shù)據(jù)就為“臟”數(shù)據(jù),即不正確的數(shù)據(jù)。產(chǎn)生上述三類數(shù)據(jù)不一致性的主要原因是并發(fā)操作破壞了事務(wù)的隔離性。并發(fā)控制就是要用正確的方式調(diào)度并發(fā)操作,使一個(gè)用戶事務(wù)的執(zhí)行不受其它事務(wù)的干擾,從而避免造成數(shù)據(jù)的不一致性。并發(fā)控制的主要技術(shù)是封鎖(Llcking )。也可以用其他技術(shù),例如在分布式數(shù)據(jù)庫(kù)系統(tǒng)中可以采用時(shí)間戳方法來(lái)進(jìn)行并發(fā)控制。4什么是封鎖?基本的封鎖類型有幾種?試述它們的含義。答:封鎖就是事務(wù) T在對(duì)某個(gè)數(shù)據(jù)對(duì)象例如表、記錄等操作之前,先向系統(tǒng)發(fā)出請(qǐng)求,對(duì) 其加鎖。加鎖后事務(wù)T就對(duì)該數(shù)據(jù)對(duì)象有了一定的控制,在事務(wù) T釋放它的鎖之前,其他的事務(wù)不能

24、更新此數(shù)據(jù)對(duì)象。封鎖是實(shí)現(xiàn)并發(fā)控制的一個(gè)非常重要的技術(shù)?;镜墓绱珂i類型有兩種:排它鎖( Exclusive Locks,簡(jiǎn)稱x鎖)和共享鎖 (Share Locks,簡(jiǎn)稱S鎖)。排它鎖又稱為寫(xiě)鎖。 若事務(wù)T對(duì)數(shù)據(jù)對(duì)象 A加上X鎖,則只允許T 讀取和修改 A,其他任何事務(wù)都不能再對(duì)A加任何類型的鎖,直到T釋放A上的鎖。這就保證了其他事務(wù)在T釋放A上的鎖之前不能再讀取和修改A。共享鎖又稱為讀鎖。若事務(wù)T對(duì)數(shù)據(jù)對(duì)象 A加上S鎖,則事務(wù) T可以讀A但不能修改 A,其他事務(wù)只能 再對(duì)A加S鎖,而不能加 X鎖,直到T釋放A上的S鎖。這就保證了其他事務(wù)可以 讀A ,但在T釋放A上的S鎖之前不能對(duì) A做任何

25、修改。5.什么是活鎖?什么是死鎖?答:T.£ThwA. IIA3 IE*JrLock 肚«1riM-k R*V-等持L nb詁«等持AHif如果事務(wù)T1封鎖了數(shù)據(jù)R,事務(wù)T2又請(qǐng)求封鎖R,于是T2等待。T3也請(qǐng)求封鎖R,當(dāng) T1釋放了 R上的封鎖之后系統(tǒng)首先批準(zhǔn)了T3的請(qǐng)求,T2仍然等待。然后T4又請(qǐng)求封鎖R,當(dāng)T3釋放了 R上的封鎖之后系統(tǒng)又批準(zhǔn)了 T4的請(qǐng)求,T2有可能永遠(yuǎn)等待,這就是活鎖的情形?;铈i的含義是該等待事務(wù)等待時(shí)間太長(zhǎng),似乎被鎖住了,實(shí)際上可能被激活。如果事務(wù)T1封鎖了數(shù)據(jù)R1, T2封鎖了數(shù)據(jù)R2,然后T1又請(qǐng)求封鎖R2, T2已封鎖了 R2,

26、于是等待T2釋放R2上的鎖。接著 T2又申請(qǐng)封鎖 R1,因T1已封鎖R1 , T2也只能等待T1釋放R1上的鎖。這樣就出現(xiàn)了 T1在等待T2,而T2又在等待T1的局面,T1和T2兩 個(gè)事務(wù)永遠(yuǎn)不能結(jié)束,形成死鎖。Tal<Hk<ljick Hi4IL4誓待«Ijm< R,6 .如何預(yù)防死鎖?答:在數(shù)據(jù)庫(kù)中,產(chǎn)生死鎖的原因是兩個(gè)或多個(gè)事務(wù)都已封鎖了一些數(shù)據(jù)對(duì)象,然后又都請(qǐng)求對(duì)已被其他事務(wù)封鎖的數(shù)據(jù)對(duì)象加鎖,從而出項(xiàng)死等待。防止死鎖的發(fā)生其實(shí)就是要破壞產(chǎn)生死鎖的條件。預(yù)防死鎖通常有兩種方法:(1) 一次封鎖法一次封鎖法要求每個(gè)事務(wù)必須一次將所有要使用的數(shù)據(jù)全部加鎖,否則就

27、不能繼續(xù)執(zhí)行。一次封鎖法雖然可以有效地防止死鎖的發(fā)生,但也存在問(wèn)題,一次就將以后要用到的全部數(shù)據(jù)加鎖,勢(shì)必?cái)U(kuò)大了封鎖的范圍,從而降低了系統(tǒng)的并發(fā)度。(2) 順序封鎖法順序封鎖法是預(yù)先對(duì)數(shù)據(jù)對(duì)象規(guī)定一個(gè)封鎖順序,所以事務(wù)都按這個(gè)順序?qū)嵭蟹怄i。順序封鎖法可以有效地防止死鎖,但也同時(shí)存在問(wèn)題。 事務(wù)的封鎖請(qǐng)求可以隨著事務(wù)的執(zhí)行而動(dòng)態(tài)地決定,很難事先確定每一個(gè)事務(wù)要封鎖哪些對(duì)象,因此也就很難按規(guī)定的順序去施加封鎖。可見(jiàn),在操作系統(tǒng)中廣為采用的預(yù)防死鎖的策略并不很適合數(shù)據(jù)庫(kù)的特點(diǎn),因此DBMS在解決死鎖的問(wèn)題上普遍采用的是診斷并解除死鎖的方法。7 請(qǐng)給出檢測(cè)死鎖發(fā)生的一種方法,當(dāng)發(fā)生死鎖后如何解除死鎖?

28、答:DBMS中診斷死鎖的方法與操作系統(tǒng)類似,一般使用超時(shí)法或事務(wù)等待圖 法。超時(shí)法是:如果一個(gè)事務(wù)的等待時(shí)間超過(guò)了規(guī)定的時(shí)限,就認(rèn)為發(fā)生了死鎖。 超時(shí)法實(shí)現(xiàn)簡(jiǎn)單,但有可能誤判死鎖,事務(wù)因其他原因長(zhǎng)時(shí)間等待超過(guò)時(shí)限時(shí),系統(tǒng)會(huì)誤認(rèn)為發(fā)生了死鎖。若時(shí)限設(shè)置得太長(zhǎng),又不能及時(shí)發(fā)現(xiàn)死鎖發(fā)生。DBMS并發(fā)控制子系統(tǒng)檢測(cè)到死鎖后,就要設(shè)法解除。通常采用的方法是選擇一個(gè)處理死鎖代價(jià)最小的事務(wù),將其撤消,釋放此事務(wù)持 有的所有鎖,使其他事務(wù)得以繼續(xù)運(yùn)行下去。當(dāng)然,對(duì)撤銷的事務(wù)所執(zhí)行的數(shù)據(jù)修改操作必須加以恢復(fù)。11 .什么樣的并發(fā)調(diào)度是正確的調(diào)度?答:可串行化(Serializable )的調(diào)度是正確的調(diào)度 ???/p>

29、串行化的調(diào)度的定義:多個(gè)事務(wù) 的并發(fā)執(zhí)行是正確的,當(dāng)且僅當(dāng)其結(jié)果與按某一次序串行執(zhí)行它們時(shí)的結(jié)果相同,稱這種調(diào)度策略為可串行化的調(diào)度。8. Tl , T2 , T3是如下的 3個(gè)事務(wù):TI : A : = A + 2 ;T2 : A : = A * 2 ;T3 : A : = A *2 ; ( A <-A*A)設(shè)A的初值為0。(I )若這3個(gè)事務(wù)允許并行執(zhí)行,則有多少可能的正確結(jié)果,請(qǐng)一一列舉出來(lái)。Tl答:A的最終結(jié)果可能有2、4、 8、 16。因?yàn)榇袌?zhí)行次序有Tl T2T3、T3T22。、T2T1T3、T2T3T1、T3T1T2、T3T2 Tl。對(duì)應(yīng)的執(zhí)行結(jié)果是16、8、4、2、(2

30、 )請(qǐng)給出一個(gè)可串行化的調(diào)度,并給出執(zhí)行結(jié)果 答:T.SkK k A'i = A = 0l圈M AiXhnA Slrrk 1A - Y + 2寫(xiě)回AC * 2 J爭(zhēng)憐1 Hd 、=鳧=21(Fikwlk Stock. AA Y J1塢冋V - 4)I iM A = = 41 nkdk AA Y弓網(wǎng)帛-I nkudk A最后結(jié)果 A為16,是可串行化的調(diào)度。(3 )請(qǐng)給出一個(gè)非串行化的調(diào)度,并給出執(zhí)行結(jié)果。 答:T,Tiin窩以Is Ar = a = o1;油 rk ASlwk A:Y 4 c 1)XJmi Vt iiLsl Aun ac =2jLw-k VI TilHe 爭(zhēng)待I u A = 2I llkt-k An 1* L hXUi AI = Y K * 2i誓得璋冋( =-4)j警特:A = Y * 2:1 i訕汕A(nku'k A最后結(jié)果 A為0 ,為非串行化的調(diào)度。(4 )若這3個(gè)事務(wù)都遵守兩段鎖協(xié)議,請(qǐng)給出一個(gè)不產(chǎn)生死鎖的可串行化調(diào)度。 答:TiJT2!T,Sluck AY A 0Xkwk AA*! + 2:SLx-LA寫(xiě)冋.V =2J i帑借A:野將:Y= As=2iXkkA(tJoi-k A竽奇SI net A:A- Y * 2零時(shí):寫(xiě)回A< “零VfI汕H A導(dǎo)片V = A - 4 :1胡汕A«<k A耳回

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論