




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、數(shù)據(jù)庫原理及應(yīng)用教案第1頁第1頁第5章 數(shù)據(jù)庫管理5.1 數(shù)據(jù)庫安全控制5.2 數(shù)據(jù)庫恢復(fù)技術(shù)5.3 數(shù)據(jù)庫并發(fā)控制第2頁第2頁 5.1 數(shù)據(jù)庫安全控制數(shù)據(jù)庫安全性是指保護數(shù)據(jù)庫預(yù)防用戶不合法地使用數(shù)據(jù)庫所造成數(shù)據(jù)泄密、更改或破壞。在數(shù)據(jù)庫系統(tǒng)中,大量數(shù)據(jù)集中存儲,并且為許多用戶直接共享,是珍貴信息資源,從而使得安全問題更為突出。系統(tǒng)安全保護辦法是否有效,是評價數(shù)據(jù)庫系統(tǒng)性能主要指標。第3頁第3頁5.1.1概述數(shù)據(jù)庫安全性是確保數(shù)據(jù)庫能否反應(yīng)現(xiàn)實世界主要辦法,用以預(yù)防非法使用數(shù)據(jù)庫中數(shù)據(jù),預(yù)防錯誤數(shù)據(jù)輸入和輸出。完整性辦法防備對象是不合語義數(shù)據(jù)??梢?,安全性是針對未授權(quán)用戶而對數(shù)據(jù)采用保護辦法
2、,而完整性是針對授權(quán)用戶而采用數(shù)據(jù)保護辦法。數(shù)據(jù)庫完整性是指盡量避免對數(shù)據(jù)庫無意濫用;數(shù)據(jù)庫安全性是指盡量避免對數(shù)據(jù)庫歹意濫用。無意濫用能夠通過約束來避免,完全避免歹意濫用是不也許,但能夠盡量增長一些保護辦法,提升數(shù)據(jù)庫安全性。 第4頁第4頁5.1.1概述 普通計算機系統(tǒng)中,安全辦法往往是一級一級層層設(shè)置,其模型如圖5-1所表示。 圖5-1 計算機系統(tǒng)安全模型 第5頁第5頁5.1.1概述安全操作系統(tǒng)是數(shù)據(jù)庫安全前提。數(shù)據(jù)庫系統(tǒng)安全辦法有下列幾種方面:(1)權(quán)限機制通過權(quán)限機制,限定用戶對數(shù)據(jù)操作權(quán)限,把數(shù)據(jù)操作限定在指定權(quán)限用戶范圍內(nèi)。第6頁第6頁(2)視圖機制通過建立用戶視圖,用戶或應(yīng)用程序
3、只能通過視圖來操作數(shù)據(jù),確保了視圖之外數(shù)據(jù)安全性。(3)數(shù)據(jù)加密對數(shù)據(jù)庫中數(shù)據(jù)進行加密,能夠預(yù)防數(shù)據(jù)在存儲和傳播過程中失密。5.1.1概述第7頁第7頁5.1.2 用戶標識和判別任何數(shù)據(jù)庫用戶要訪問數(shù)據(jù)庫時,都需申明自己用戶標識符,只有通過核實人才干進入系統(tǒng),這個核實工作就稱為用戶判別。判別辦法有下列3種:1口令(Password)口令是最廣泛使用用戶判別辦法。所謂口令就是注冊時DBMS 予以每個用戶一個字符串。 第8頁第8頁2利用用戶個人特性用戶個人特性包括指紋、署名、聲波紋等。這些判別辦法效果不錯,但需要特殊判別裝置。 3磁卡磁卡是使用較廣判別手段,磁卡上統(tǒng)計有用戶用戶標識符。5.1.2 用
4、戶標識和判別第9頁第9頁5.1.3 訪問控制判別處理了用戶是否合法問題,但合法用戶權(quán)利是不應(yīng)當(dāng)相同,任何合法用戶都只能執(zhí)行他有權(quán)執(zhí)行操作,只能訪問他有權(quán)訪問數(shù)據(jù)庫數(shù)據(jù)。訪問控制目的就是處理此問題,主要包括授權(quán)檢查權(quán)限 第10頁第10頁1數(shù)據(jù)庫用戶種類數(shù)據(jù)庫用戶按其訪問權(quán)利分為3類:普通數(shù)據(jù)庫用戶含有創(chuàng)建表權(quán)力用戶含有DBA特權(quán)用戶。 第11頁第11頁1數(shù)據(jù)庫用戶種類1)普通數(shù)據(jù)庫用戶含有CONNECT特權(quán)用戶該類用戶可進入該數(shù)據(jù)庫系統(tǒng),但只有下列權(quán)利:(1)依據(jù)授權(quán),查新或更改數(shù)據(jù)庫中部分數(shù)據(jù);(2)能夠創(chuàng)建視圖或定義數(shù)據(jù)別名。第12頁第12頁2)含有創(chuàng)建表權(quán)力用戶含有RESOURCE特權(quán)用戶
5、該類用戶除含有普通數(shù)據(jù)庫用戶所含有權(quán)利外,尚有下列特權(quán): (1)能夠在此數(shù)據(jù)庫內(nèi)創(chuàng)建表、 索引和聚簇;(2)能夠授予其它數(shù)據(jù)庫用戶對其所創(chuàng)建表各種訪問,還可收回授出訪問權(quán);(3)有權(quán)跟蹤審計( audit )自己所創(chuàng)建數(shù)據(jù)對象。1數(shù)據(jù)庫用戶種類第13頁第13頁1數(shù)據(jù)庫用戶種類3)含有DBA特權(quán)用戶含有DBA特權(quán)用戶可支配這個數(shù)據(jù)庫所有資源。DBA除擁有RESOURCE所擁有權(quán)利外,主要尚有下列特權(quán):(1)可訪問數(shù)據(jù)庫中任何數(shù)據(jù);(2)為數(shù)據(jù)庫用戶注冊及撤消注冊權(quán)利;(3)授予及收回數(shù)據(jù)庫用戶對數(shù)據(jù)庫訪問權(quán);(4)有權(quán)控制這個數(shù)據(jù)庫跟蹤審計 。第14頁第14頁2DBA對用戶注冊工作(1)DBA為
6、用戶進行注冊GRANT在SQL中語言,DBA可用GRANT命令為用戶注冊,命令格式下列: GRANT TO IDENTIFIED BY 其中, 有3種: CONNECT,RESOURCE和DBA。對于新用戶,命令中必須有口令選項;已是數(shù)據(jù)庫用戶,只是增長特權(quán)類型,則不必再有口令 。 第15頁第15頁舉例【例5.1】把新用戶WANG注冊為RESOURCE用戶,口令為W02XYZ: GRANT RESOURCE TO WANG IDENTIFIED BY W02XYZ【例5.2】再把【例5.1】中用戶WANG注冊為DBA用戶(此時不必有口令項): GRANT DBA TO WANG第16頁第16頁
7、2DBA對用戶注冊工作(2)DBA撤消對用戶注冊REVOKE命令格式下列:REVOKE FROM 其中 同前。執(zhí)行此命令后, 所含有即被撤消。若此用戶所有都被撤消,則他就成為非法用戶了。第17頁第17頁2DBA對用戶注冊工作(3)普通授權(quán)GRANT普通授權(quán)是指授予某用戶對某數(shù)據(jù)對象進行某種操作權(quán)利。 在SQL語言中,DBA及擁有權(quán)限用戶可用GRANT語句向用戶授權(quán)。格式下列: GRANT ,權(quán)限 ON TO , WITH GRANT OPTION;第18頁第18頁 不同類型操作對象有不同操作權(quán)限,常見操作權(quán)限如表5-1所表示:第19頁第19頁2DBA對用戶注冊工作闡明:(1)PUBLIC 。接
8、受權(quán)限用戶能夠是單個或多個詳細用戶,PUBLIC參數(shù)可將權(quán)限賦給全體用戶。(2)WITH GRANT OPTION。若指定了該子句,那麼,取得了權(quán)限用戶還能夠?qū)?quán)限賦給其它用戶。第20頁第20頁舉例【例5.3】將對供應(yīng)商S、零件P、項目J所有操作權(quán)限賦給用戶User1及User2。GRANT ALL PRIVILEGES ON TABLE S,P,J TO User1,User2;【例5.4】將對供應(yīng)商S插入權(quán)限賦給用戶User1,并允許將此權(quán)限賦給其它用戶。GRANT INSERT ON TABLE S TO User1 WITH GRANT OPTION;第21頁第21頁2DBA對用戶注冊
9、工作【例5.5】DBA把數(shù)據(jù)庫SPJ中建立表權(quán)限賦給用戶User1。GRANT CREATETAB ON DATABASE SPJ TO User1; 第22頁第22頁2DBA對用戶注冊工作(4)收回權(quán)限REVOKE語句格式: REVOKE, ON FROM ,; 第23頁第23頁舉例【例5.6】將用戶User1及User2對供應(yīng)商S、零件P、項目J所有操作權(quán)限收回。REVOKE ALL PRIVILEGES ON TABLE S,P,J FROM User1, User2;【例5.7】將所有用戶對供應(yīng)商S所有查詢權(quán)限收回。REVOKE SELECT ON TABLE S FROM PUBLI
10、C;【例5.8】將User1用戶對供應(yīng)商S供應(yīng)商編號Sno修改權(quán)限收回。REVOKE UPDATE(Sno) ON TABLE S FROM User1;第24頁第24頁 5.2數(shù)據(jù)庫恢復(fù)技術(shù)數(shù)據(jù)庫恢復(fù)技術(shù)和并發(fā)控制是數(shù)據(jù)庫管理系統(tǒng)兩個主要構(gòu)成部分。數(shù)據(jù)庫恢復(fù)主要是指恢復(fù)數(shù)據(jù)庫本身,即在故障引起數(shù)據(jù)庫當(dāng)前狀態(tài)不一致后,將數(shù)據(jù)庫恢復(fù)到某個正確狀態(tài)或一致狀態(tài)。恢復(fù)原理非常簡樸,就是要建立冗余數(shù)據(jù)(redundancy)。第25頁第25頁5.2.1 事務(wù)數(shù)據(jù)庫恢復(fù)需要掌握重點內(nèi)容有:事務(wù)基本概念事務(wù)特性故障類型恢復(fù)辦法與策略。第26頁第26頁1事務(wù)事務(wù)是一個操作序列,這些操作“要么都做,要么都不做”
11、,是數(shù)據(jù)庫環(huán)境中不可分割邏輯工作單位。在 SQL語言中事務(wù)定義語句有三條:(1)BEGIN TRANSACTION 事務(wù)開始(2)COMMIT事務(wù)提交。(3)ROLLBACK 事務(wù)回滾。5.2.1 事務(wù)第27頁第27頁(1)原子性(atomicity):事務(wù)是原子,要么都做,要么都不做。(2)一致性( consistency):事務(wù)執(zhí)行結(jié)果必須確保數(shù)據(jù)庫從一個一致性狀態(tài)變到另一個一致性狀態(tài)。因此,當(dāng)數(shù)據(jù)庫只包括成功事務(wù)提交結(jié)果時,稱數(shù)據(jù)庫處于一致性狀態(tài)。(3)隔離性( isolation ):事務(wù)互相隔離。當(dāng)多個事務(wù)并發(fā)執(zhí)行時,任一事務(wù)更新操作直到其成功提交整個過程,對其它事務(wù)都是不可見。(4
12、)持久性(durability):一旦事務(wù)成功提交,即使數(shù)據(jù)庫崩潰,其對數(shù)據(jù)庫更新操作也將永久有效。2事務(wù)四個特性第28頁第28頁普通將事物執(zhí)行狀態(tài)分為5種,事務(wù)必須處于這5種狀態(tài)之一。(1) 活動狀態(tài):事務(wù)初始狀態(tài),事務(wù)執(zhí)行時處于這個狀態(tài)。 3. 事務(wù)狀態(tài)第29頁第29頁(2)部分提交狀態(tài):當(dāng)操作序列最后一條語句自動執(zhí)行后,事務(wù)處于部分提交狀態(tài)。這時,事務(wù)即使已經(jīng)完全執(zhí)行,但由于實際輸出也許還暫時駐留在內(nèi)存中,在事務(wù)成功完畢前仍有也許出現(xiàn)硬件故障,事務(wù)仍也許不得不中斷。因此,部分提交狀態(tài)并不等于事務(wù)成功執(zhí)行。3. 事務(wù)狀態(tài)第30頁第30頁(3) 失敗狀態(tài):由于硬件或邏輯等錯誤,使得事務(wù)不能繼
13、續(xù)正常執(zhí)行,事務(wù)就進入了失敗狀態(tài),處于失敗狀態(tài)事務(wù)必須回滾(ROLLBACK)。這樣,事務(wù)就進入了中斷狀態(tài)。 3. 事務(wù)狀態(tài)第31頁第31頁(4) 中斷狀態(tài):事務(wù)回滾并且數(shù)據(jù)庫恢復(fù)到事務(wù)開始執(zhí)行前狀態(tài)。 (5) 提交狀態(tài):當(dāng)事務(wù)成功完畢后,稱事務(wù)處于提交狀態(tài)。只有事務(wù)處于提交狀態(tài)后,才干說事務(wù)已經(jīng)提交。 3. 事務(wù)狀態(tài)第32頁第32頁能夠在事務(wù)中執(zhí)行下列操作,實現(xiàn)事務(wù)狀態(tài)轉(zhuǎn)換: (1) BEGIN -TRANSATION:開始運營事務(wù),使事務(wù)進入活動狀態(tài)。(2) END -TRANSATION:闡明事務(wù)中所有讀寫操作都已完畢,使事務(wù)進入部分提交狀態(tài),把事務(wù)所有操作對數(shù)據(jù)庫影響存入數(shù)據(jù)庫。 3.
14、 事務(wù)狀態(tài)第33頁第33頁(3) COMMIT TRANSACTION :標志事務(wù)已經(jīng)成功地完畢,事務(wù)中所有操作對數(shù)據(jù)庫影響已經(jīng)安全地存入數(shù)據(jù)庫,事務(wù)進入提交狀態(tài),結(jié)束事務(wù)運營。 (4) ABORT - TRANSACTION :標志事務(wù)進入失敗狀態(tài),系統(tǒng)撤消事務(wù)中所有操作對數(shù)據(jù)庫和其它事務(wù)影響,結(jié)束事務(wù)運營。圖 5-2給出了事務(wù)狀態(tài)轉(zhuǎn)換。3. 事務(wù)狀態(tài)第34頁第34頁圖5-2 事務(wù)狀態(tài)轉(zhuǎn)換圖第35頁第35頁 5.2.2 備份1數(shù)據(jù)庫備份必要性人為錯誤、硬盤損壞、電腦病毒、斷電或是天災(zāi)人禍等等都有也許造成數(shù)據(jù)丟失。正確分析威脅數(shù)據(jù)安全原因,及時地備份數(shù)據(jù),能使系統(tǒng)安全防護更有針對性。第36頁第
15、36頁2.故障種類(1)事務(wù)內(nèi)部故障:事務(wù)故障是由于事務(wù)程序內(nèi)部錯誤而引起。事務(wù)內(nèi)部故障有是能夠通過事務(wù)程序本身發(fā)覺。但也有些是非預(yù)期,不能由事務(wù)程序處理。對于可預(yù)期錯誤,應(yīng)當(dāng)由應(yīng)用程序以回滾方式來恢復(fù),非預(yù)期故障應(yīng)用程序無法處理,是由DBMS系統(tǒng)來實現(xiàn)故障恢復(fù)。事務(wù)故障通常指非預(yù)期故障。第37頁第37頁2.故障種類(2)系統(tǒng)故障:通常稱為軟故障,是指造成系統(tǒng)停止運營任何事件,使得系統(tǒng)要重新啟動,如CPU故障 ,操作 系統(tǒng)故障,忽然停電等。系統(tǒng)故障只是丟失了數(shù)據(jù)緩沖區(qū)中內(nèi)容,影響正在執(zhí)行所有事務(wù),但不會破壞數(shù)據(jù)庫。系統(tǒng)故障中斷了事務(wù)執(zhí)行過程,破壞了事務(wù)原子性,由于緩沖區(qū)中內(nèi)容也許部分已寫入數(shù)據(jù)
16、庫,系統(tǒng)重啟后數(shù)據(jù)庫也許處于不一致狀態(tài)。 第38頁第38頁2.故障種類(3)介質(zhì)故障:通常稱為硬故障。如磁盤損壞、磁頭碰撞、瞬時強磁干擾。這類故障發(fā)生幾率小,但破壞性最大。(4)計算機病毒:是一個人為故障和破壞,是一些惡作劇研制一個計算機程序,能夠繁殖和傳播。第39頁第39頁 5.2.3 恢復(fù)1故障恢復(fù)技術(shù)要使數(shù)據(jù)庫在發(fā)生故障后能夠恢復(fù),必須建立冗余數(shù)據(jù),在故障發(fā)生后利用這些冗余數(shù)據(jù)實行數(shù)據(jù)恢復(fù)。建立冗余數(shù)據(jù)慣用技術(shù)是數(shù)據(jù)轉(zhuǎn)儲和建立日記文獻。 第40頁第40頁1故障恢復(fù)技術(shù)數(shù)據(jù)轉(zhuǎn)儲是將數(shù)據(jù)庫復(fù)制到另一個磁盤或磁帶上保留起來過程,又稱數(shù)據(jù)備份。數(shù)據(jù)轉(zhuǎn)儲分為靜態(tài)轉(zhuǎn)儲和動態(tài)轉(zhuǎn)儲。靜態(tài)轉(zhuǎn)儲是指在轉(zhuǎn)儲期
17、間不允許對數(shù)據(jù)庫進行任何存取、修改活動,得到與數(shù)據(jù)庫完全一致副本。靜態(tài)轉(zhuǎn)儲又可分為完全轉(zhuǎn)儲和增量轉(zhuǎn)儲。完全轉(zhuǎn)儲是轉(zhuǎn)儲當(dāng)前數(shù)據(jù)庫所有數(shù)據(jù)增量轉(zhuǎn)儲只轉(zhuǎn)儲上次備份后發(fā)生改變數(shù)據(jù)動態(tài)轉(zhuǎn)儲是指在轉(zhuǎn)儲期間允許對數(shù)據(jù)庫存取和修改, 即轉(zhuǎn)儲能夠與事務(wù)并行執(zhí)行。第41頁第41頁1故障恢復(fù)技術(shù)為確保數(shù)據(jù)庫是可恢復(fù),日記文獻登記必須遵循兩條原則:(1)登記順序嚴格按并發(fā)事務(wù)執(zhí)行時間順序。(2)必須先寫日記文獻,后寫數(shù)據(jù)庫。為了避免磁盤介質(zhì)出現(xiàn)故障影響數(shù)據(jù)庫可用性,許多DBMS提供數(shù)據(jù)庫鏡像功效用于數(shù)據(jù)庫恢復(fù)。數(shù)據(jù)庫關(guān)鍵技術(shù)在于建立冗余數(shù)據(jù),即備份數(shù)據(jù)。如何在系統(tǒng)出現(xiàn)故障后能夠及時使數(shù)據(jù)庫恢復(fù)到故障前正確狀態(tài),就是數(shù)
18、據(jù)庫恢復(fù)技術(shù)。第42頁第42頁2恢復(fù)策略有了數(shù)據(jù)轉(zhuǎn)儲和日記文獻,就能夠在系統(tǒng)發(fā)生故障時進行恢復(fù),故障恢復(fù)有兩個操作:(1)撤消事務(wù)(UNDO):將未完畢事務(wù)撤消,使數(shù)據(jù)庫回復(fù)到事務(wù)執(zhí)行前正確狀態(tài)。撤消事務(wù)過程下列:反向查看未完畢事務(wù)日記(由后向前掃描),查找事務(wù)更新操作;對該事務(wù)更新操作執(zhí)行逆操作,用日記文獻統(tǒng)計中更新前值寫入數(shù)據(jù)庫,插入統(tǒng)計從數(shù)據(jù)庫中刪除,刪除統(tǒng)計重新插入數(shù)據(jù)庫中;繼續(xù)反向掃描日記文獻,查找該事務(wù)其它更新操作并執(zhí)行操作直至事務(wù)開始標志。第43頁第43頁2恢復(fù)策略(2)重做事務(wù)(REDO):將已經(jīng)提交事務(wù)重新執(zhí)行。重做事務(wù)過程下列:從事務(wù)開始標識起,正向掃描日記文獻,重新執(zhí)行日
19、記文獻登記該事務(wù)對數(shù)據(jù)庫因此操作,直至事務(wù)結(jié)束標識。第44頁第44頁2恢復(fù)策略對于不同故障,采取不同恢復(fù)策略。(1)事務(wù)故障恢復(fù)事務(wù)故障是事務(wù)在運行至正常終止點 (COMMIT或ROLLBACK)前終止,日記文件只有該事務(wù)標識而沒有結(jié)束標識。對這類故障恢復(fù)經(jīng)過撤消(UNDO)產(chǎn)生故障事務(wù),使數(shù)據(jù)庫恢復(fù)到該事務(wù)執(zhí)行前正確狀態(tài)來完成。第45頁第45頁2恢復(fù)策略(2)系統(tǒng)故障恢復(fù)系統(tǒng)故障會使數(shù)據(jù)庫數(shù)據(jù)不一致,原因有兩個:一是未完畢事務(wù)對數(shù)據(jù)庫更新也許已寫入數(shù)據(jù)庫;二是已提交事務(wù)對數(shù)據(jù)庫更新也許還在緩沖區(qū)中沒來得及寫入數(shù)據(jù)庫。因此恢復(fù)操作就是要撤消故障發(fā)生時未完畢事務(wù),重做(REDO)已提交事務(wù)。 第
20、46頁第46頁2恢復(fù)策略(3)介質(zhì)故障恢復(fù)介質(zhì)故障由于數(shù)據(jù)庫遭到破壞,需要重裝數(shù)據(jù)庫,裝載故障前最近一次備份和故障前日記文獻副本,再按照系統(tǒng)故障恢復(fù)過程執(zhí)行撤消和重做來恢復(fù)。第47頁第47頁5.3數(shù)據(jù)庫并發(fā)控制5.3.1事務(wù)調(diào)度我們考慮一個簡樸銀行數(shù)據(jù)庫系統(tǒng)。設(shè)每個帳號在數(shù)據(jù)庫中含有一條數(shù)據(jù)庫統(tǒng)計,用以統(tǒng)計這個帳號存款數(shù)量和其它信息。設(shè)有兩個事務(wù)T0和T1, 事務(wù)T0從帳號A轉(zhuǎn)元到帳號B;事務(wù)T1從帳號A轉(zhuǎn)20%款到帳號B。T 0和T 1定義下列: 第48頁第48頁5.3.1事務(wù)調(diào)度T0: read(A);T1: read(A);A:=A-;write(A);read(B);B:=B+;wri
21、te(B).temp:=A*0.2; A:=A-temp;write(A);read(B); B:=B+temp;write(B)第49頁第49頁5.3.1事務(wù)調(diào)度闡明:假設(shè)用 A和B表示帳號A和帳號B存款數(shù)量;A和B初值分別為10000和0 。假如這兩個事務(wù)順序執(zhí)行,能夠有兩種方案。一是先執(zhí)行T0后執(zhí)行T1,如圖5-3(a)所表示。運營結(jié)束時,A和B最后值分別是6400和23600。另一個是先執(zhí)行T1后執(zhí)行T0,如圖5-3(b)所表示。A和B最后值分別是6000和24000。無論采用兩種方案中哪一個,A+B在兩個事務(wù)結(jié)束時仍然是10000+0。第50頁第50頁第51頁第51頁5.3.1事務(wù)調(diào)
22、度事務(wù)調(diào)度普通概念。(1)調(diào)度(schedule):事務(wù)執(zhí)行順序。(2)串行調(diào)度 (serial schedule):多個事務(wù)依次串行執(zhí)行,且只有當(dāng)一個事務(wù)所有操作都執(zhí)行完后才執(zhí)行另一個事務(wù)所有操作。(3)并行調(diào)度 (concurrent schedule):利用分時辦法同時處理多個事務(wù)。第52頁第52頁5.3.1事務(wù)調(diào)度從前面例子能夠看出,無論先執(zhí)行哪個事務(wù),只要是串行調(diào)度,執(zhí)行結(jié)果都是穩(wěn)定和正確。對于N個事務(wù),最多有N!種正確串行調(diào)度。但對于N個事務(wù)進行并發(fā)調(diào)度,情況會變得復(fù)雜多,調(diào)度方案遠不小于N!個,并且并發(fā)調(diào)度結(jié)果有也許是錯誤。圖5-4(a)并發(fā)調(diào)度是正確,圖5-4(b)也是一個并發(fā)
23、調(diào)度,但其造成A和B最后止果為8000和24000, A+B=8000+24000 30000,結(jié)果是錯誤。稱此并行調(diào)度將產(chǎn)生不一致狀態(tài)。第53頁第53頁第54頁第54頁5.3.2并發(fā)操作問題并發(fā)控制就是一個在多用戶環(huán)境下,對數(shù)據(jù)庫進行并發(fā)操作進行規(guī)范機制。其目的是為了避免對數(shù)據(jù)丟失、更新、讀“臟”數(shù)據(jù)和不可重復(fù)讀等,從而確保數(shù)據(jù)正確性與一致性。第55頁第55頁5.3.2并發(fā)操作問題并發(fā)操作帶來數(shù)據(jù)不一致性有三類:丟失修改不可重復(fù)讀讀“臟”數(shù)據(jù)如圖5-5所表示。第56頁第56頁第57頁第57頁5.3.2并發(fā)操作問題(1)丟失修改 如圖5-5(a)所表示。(2)不可重復(fù)讀 如圖5-5(b)所表示
24、。(3)讀“臟”數(shù)據(jù) 如圖5-5(c)所表示。第58頁第58頁5.3.3加鎖并發(fā)事務(wù)假如對數(shù)據(jù)讀寫時不加以控制,會破壞事務(wù)隔離性和一致性??刂剖侄尉褪羌渔i,在事務(wù)執(zhí)行時限制其它事務(wù)對數(shù)據(jù)讀取。第59頁第59頁5.3.3加鎖在并發(fā)控制中引入兩種鎖:排它鎖(Exclusive Locks,簡稱X鎖)和共享鎖(Share Locks,簡稱S鎖)。排它鎖又稱為寫鎖,用于對數(shù)據(jù)進行寫操作時進行鎖定。共享鎖又稱為讀鎖,用于對數(shù)據(jù)進行讀操作時進行鎖定。第60頁第60頁5.3.3加鎖通過對數(shù)據(jù)加鎖,能夠限制其它事務(wù)對數(shù)據(jù)訪問,但也降低了事務(wù)并發(fā)性。怎樣在確保事務(wù)一致性前提下盡也許提升并發(fā)性,這需要封鎖協(xié)議來處理。第61頁第61頁5.3.3加鎖封鎖協(xié)議是對數(shù)據(jù)加鎖類型、加鎖時間和釋放鎖時間一些規(guī)則描述。(1)一級封鎖協(xié)議是:事務(wù) T在修改數(shù)據(jù) A之前必須先對其加X鎖,直到事務(wù)結(jié)束才釋放X鎖。(2)二級封鎖協(xié)議是:一級封鎖協(xié)議加上事務(wù)T在讀取數(shù)據(jù) A 之前必須對其加上 S鎖,讀完后即可釋放S鎖。(3)三級封鎖協(xié)議是:一級封鎖協(xié)議加上事務(wù)T在讀取數(shù)據(jù)A 之前必須對其加上 S鎖,直到事務(wù)結(jié)束才釋放S鎖。第62頁第62頁5
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 云端絡(luò)筒數(shù)據(jù)安全策略-深度研究
- 2025年合作股權(quán)投資合同標準文本
- 2025年二手燃油摩托車轉(zhuǎn)讓合同樣本
- 跨平臺會議工具集成-深度研究
- 調(diào)度算法性能評估-深度研究
- 邵陽學(xué)院《GNSS測量原理及其應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 臺州學(xué)院《創(chuàng)新創(chuàng)業(yè)實踐訓(xùn)練四》2023-2024學(xué)年第二學(xué)期期末試卷
- 大連大學(xué)《入侵生態(tài)學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 長沙醫(yī)學(xué)院《地理信息系統(tǒng)原理與軟件開發(fā)》2023-2024學(xué)年第二學(xué)期期末試卷
- 陜西中醫(yī)藥大學(xué)《中國西部文學(xué)研究》2023-2024學(xué)年第二學(xué)期期末試卷
- T-IMAS 087-2024 托克托縣辣椒地方品種提純復(fù)壯技術(shù)規(guī)程
- 2025年全國道路運輸企業(yè)安全管理人員考試題庫(含答案)
- 太陽能光伏發(fā)電安裝工程監(jiān)理實施細則
- 小學(xué)科學(xué)課件《水》
- 全新版大學(xué)高階英語:綜合教程 第3冊 Unit 6 China Rejuvenated課件
- 2024年下半年江蘇省鹽城市射陽縣人民政府項目辦公室招聘易考易錯模擬試題(共500題)試卷后附參考答案
- 醫(yī)療行業(yè)信息安全等級保護
- 新公務(wù)員法培訓(xùn)講稿
- 荊州市國土空間總體規(guī)劃(2021-2035年)
- 2024年政府辦事-戶口管理考試近5年真題集錦(頻考類試題)帶答案
- 2024年內(nèi)蒙古中考語文試卷五套合卷附答案
評論
0/150
提交評論