版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第七章
數(shù)據(jù)庫恢復(fù)技術(shù)7.1.1事務(wù)事務(wù)Transaction用戶定義的一個數(shù)據(jù)庫操作序列,這些操作要么全做,要么全不做,是一個不可分割的工作單位事務(wù)和程序的關(guān)系在關(guān)系數(shù)據(jù)庫中,一個事務(wù)可以是一條SQL語句,一組SQL語句或整個程序一個應(yīng)用程序通常包含多個事務(wù)定義事務(wù)BEGINTRANSACTION開頭:事務(wù)開始COMMIT結(jié)束:事務(wù)正常結(jié)束提交事務(wù)的所有操作事務(wù)中所有對數(shù)據(jù)庫的更新永久生效ROLLBACK結(jié)束:事務(wù)異常終止事務(wù)運行的過程中發(fā)生了故障,不能繼續(xù)執(zhí)行,撤銷事務(wù)的所有更新操作事務(wù)滾回到開始時的狀態(tài)7.1.3
事務(wù)的特性事務(wù)的ACID特性原子性(Atomicity)一致性(Consistency)隔離性(Isolation)持續(xù)性(Durability)1.原子性事務(wù)是數(shù)據(jù)庫的邏輯工作單位事務(wù)中包括的諸操作要么都做,要么都不做2.一致性事務(wù)執(zhí)行的結(jié)果必須使數(shù)據(jù)庫從一個一致性狀態(tài)變到另一個一致性狀態(tài)一致性狀態(tài):數(shù)據(jù)庫中只包含成功事務(wù)提交的結(jié)果不一致狀態(tài):數(shù)據(jù)庫中包含失敗事務(wù)的結(jié)果【舉例】帳號A帳號B-10000+10000總金額不變兩個操作要么全做,要么全不做全做或者全不做,數(shù)據(jù)庫都處于一致性狀態(tài)如果只做一個操作,數(shù)據(jù)庫就處于不一致性狀態(tài)3.隔離性對并發(fā)執(zhí)行而言,一個事務(wù)的執(zhí)行不能被其他事務(wù)干擾一個事務(wù)內(nèi)部的操作及使用的數(shù)據(jù)對其他并發(fā)事務(wù)是隔離的——一個事務(wù)在進入提交狀態(tài)以前,它對數(shù)據(jù)庫的更新不可由其它事務(wù)讀取并發(fā)執(zhí)行的各個事務(wù)之間不能互相干擾4.持續(xù)性一個事務(wù)一旦提交,它對數(shù)據(jù)庫中數(shù)據(jù)的改變就應(yīng)該是永久性的接下來的其他操作或故障不應(yīng)該對其執(zhí)行結(jié)果有任何影響7.2
數(shù)據(jù)庫恢復(fù)數(shù)據(jù)庫恢復(fù)故障是不可避免的:計算機硬件故障、系統(tǒng)軟件和應(yīng)用軟件的錯誤、操作員的失誤、惡意的破壞故障的影響:運行事務(wù)非正常中斷、破壞數(shù)據(jù)庫數(shù)據(jù)庫的恢復(fù):保證故障發(fā)生后,能把數(shù)據(jù)庫中的數(shù)據(jù)從錯誤狀態(tài)恢復(fù)到某種邏輯一致的狀態(tài)7.3故障的種類7.陪3.淡1事務(wù)鄰內(nèi)部閉的故弦障——不破男壞數(shù)賣據(jù)庫事務(wù)兇沒有揮達到茂預(yù)期逼的終租點(CO穩(wěn)MM艱IT或者稱顯式銹的RO鈴LL灑BA而CK)常見蠅原因:①輸入警數(shù)據(jù)啄有誤②運算質(zhì)溢出③違反膊了某厭些完鵲整性干限制④某些餅應(yīng)用摸程序獨出錯⑤并行耐事務(wù)裝發(fā)生凍死鎖事務(wù)上故障怎的恢由復(fù):立撤消侍事務(wù)君(UN偵DO)發(fā)生天事務(wù)泊故障暮時,蒜該事陰務(wù)可口能已廣把對蹤蝶數(shù)據(jù)爛庫的干部分衡修改湊寫回固磁盤強行冒回滾(RO掉LL創(chuàng)BA口CK)該事曾務(wù)撤銷勾該事曠務(wù)對煮數(shù)據(jù)編庫的往所有箏修改唇,使依得這撲個事搞務(wù)好硬像根啟本沒煙有啟哄動一尺樣7.柱3.赴2系統(tǒng)死故障——不破并壞數(shù)涌據(jù)庫操作超系統(tǒng)冶或DB蹲MS代碼風(fēng)錯誤操作兩員操繞作失績誤特定久類型案的硬裂件錯蜂誤(繭如CP青U故障什)突然疊停電系統(tǒng)樣故障籠的恢闊復(fù)清除導(dǎo)尚未程完成縱的事努務(wù)對細(xì)數(shù)據(jù)本庫的販所有憲修改系統(tǒng)重新挪啟動時,甩恢復(fù)離程序裹要強行世撤消云(UN盟DO)所有詞未完賴成事煮務(wù)將緩柜沖區(qū)論中已饒完成仰事務(wù)符提交嫂的結(jié)慣果寫貝入數(shù)啊據(jù)庫系統(tǒng)重新笑啟動時,或恢復(fù)扁程序需要壁重做抹(RE少DO)所有滑已提威交的遭事務(wù)7.走3.岔3介質(zhì)艱故障——破壞薦數(shù)據(jù)刺庫硬故巧障使若存儲擋在外敲存中堂的數(shù)犬據(jù)部猛分丟河失或攀全部繳丟失架,影癥響正赤在存羊取這框部分慈數(shù)據(jù)購的所咱有事忠務(wù)介質(zhì)殺故障糟比前敬兩類境故障爪的可憐能性術(shù)小得源多,疲但破帶壞性燭大得分多7.涼4恢復(fù)洗的實盤現(xiàn)技抹術(shù)恢復(fù)恢復(fù)算操作濱的基血本原盯理:不冗余——利用柄存儲噸在系屋統(tǒng)其截它地為方的貴冗余盾數(shù)據(jù)揉來重冤建數(shù)肝據(jù)庫味中已旬被破礎(chǔ)壞或益不正篩確的朱那部圈分?jǐn)?shù)群據(jù)恢復(fù)苦的實畝現(xiàn)技佛術(shù):湖復(fù)雜——一個繩大型懶數(shù)據(jù)荒庫產(chǎn)棕品,院恢復(fù)貫子系頁統(tǒng)的景代碼歪要占償全部想代碼仿的10鏈%以上建立借冗余弱數(shù)據(jù)喬的方葉法數(shù)據(jù)賢轉(zhuǎn)儲登錄竭日志衫文件7.建4.公1數(shù)據(jù)允轉(zhuǎn)儲轉(zhuǎn)儲指DB棗A將整善個數(shù)功據(jù)庫昂復(fù)制揮到磁蠟帶或夜另一姜個磁火盤上抗保存斧起來趴的過級程這些蟻備用碼的數(shù)球據(jù)文害本稱在為后共備副選本或揚后援成副本圖7.賠2故障孝發(fā)生輝點轉(zhuǎn)儲運行臨事務(wù)↓正常叨運行─┼規(guī)──輕──認(rèn)──影─┼喚──包──凈──炒──僻──票──革─TaTbTf重裝虛后備清副本重新餡運行動事務(wù)恢復(fù)─┼邀──遙──俊──述─┴--容--唱--峽--婆--面--→轉(zhuǎn)儲燃方式靜態(tài)僚轉(zhuǎn)儲動態(tài)敘轉(zhuǎn)儲轉(zhuǎn)儲顧方式——靜態(tài)匪轉(zhuǎn)儲在系毯統(tǒng)中提無運區(qū)行事眼務(wù)時芽進行餃的轉(zhuǎn)域儲操查作轉(zhuǎn)儲懸開始硬時數(shù)芽據(jù)庫海處于華一致糠性狀巧態(tài),資轉(zhuǎn)儲梨期間禾不允勻許對剝數(shù)據(jù)肉庫的磨任何飾存取醋、修些改活傲動優(yōu)點喜:實現(xiàn)濫簡單缺點反:降低修了數(shù)說據(jù)庫只的可攜用性——轉(zhuǎn)儲禾必須像等用應(yīng)戶事序務(wù)結(jié)污束、碌新的及事務(wù)慰必須滔等轉(zhuǎn)德儲結(jié)健束故障趕發(fā)生服點靜態(tài)轉(zhuǎn)儲運行火事務(wù)↓正常蛾運行─┼滾──潑──玻──吊─┼壤──偽──想──譯──矛──限──削─TaTbTf重裝泡后備劃副本恢復(fù)─┼裙──債──滿──粉─┥轉(zhuǎn)儲裝過程聯(lián)中不另運行流任何賄事務(wù)轉(zhuǎn)儲本方式——動態(tài)層轉(zhuǎn)儲轉(zhuǎn)儲感期間累允許塊對數(shù)乞據(jù)庫叔進行運存取催或修糾改,加轉(zhuǎn)儲租操作否與用轟戶事過務(wù)并男發(fā)進欄行優(yōu)點墊:不用京等待丘正在處運行腸的用階戶事工務(wù)結(jié)黎束不會怕影響解新事流務(wù)的視運行動態(tài)兼轉(zhuǎn)儲猛的缺之點——不能代保證掀副本的中的憲數(shù)據(jù)株正確督有效轉(zhuǎn)儲開始Tc時刻A=100轉(zhuǎn)儲過程中Td時刻A改為200轉(zhuǎn)儲接的時貨候A的值婦已經(jīng)便不是披最新過的A值動態(tài)駱轉(zhuǎn)儲+日志期文件姓:故璃障恢賤復(fù)需要熄把動扁態(tài)轉(zhuǎn)收儲期與間各盆事務(wù)椒對數(shù)闊據(jù)庫覆的修俗改活曠動登暮記下亞來,伶建立哄日志再文件后備部副本號加上秋日志變文件朱才能乘把數(shù)景據(jù)庫響恢復(fù)攔到某面一時壘刻的敲正確寬狀態(tài)TaTbTf動態(tài)轉(zhuǎn)儲運行多事務(wù)故障肯發(fā)生品點正常脫運行─┼捎──盆──肅──樸─┼腹──明──師──賄──冬──弊──應(yīng)───咳──薦──歪──咽─┼圓──旁──直──梨──羽──碰──花─轉(zhuǎn)儲劇日志累文件重裝縮慧后備嘩副本晃,然養(yǎng)后利筒用轉(zhuǎn)置儲的乘日志替文件績恢復(fù)恢復(fù)桿到一━━搞━━童━━瞇┥致性并狀態(tài)轉(zhuǎn)儲蠶過程頁中有仰事務(wù)懇運行海量令轉(zhuǎn)儲圈和增搭量轉(zhuǎn)飄儲海量忍轉(zhuǎn)儲:每次滲轉(zhuǎn)儲翻全部塵數(shù)據(jù)接庫增量也轉(zhuǎn)儲:只轉(zhuǎn)姓儲上議次轉(zhuǎn)匹儲后弟更新寨過的燦數(shù)據(jù)比較從恢網(wǎng)復(fù)角翅度看斯,使進用海補量轉(zhuǎn)侮儲得李到的習(xí)后備報副本萄進行寶恢復(fù)炒往往強更方桃便如果撕數(shù)據(jù)波庫很戲大,扎事務(wù)劉處理祖又十睜分頻裙繁,貝則增初量轉(zhuǎn)吧儲方司式更悟?qū)嵱门芨袎涡?shù)據(jù)液轉(zhuǎn)儲倒分類
轉(zhuǎn)儲狀態(tài)動態(tài)轉(zhuǎn)儲靜態(tài)轉(zhuǎn)儲轉(zhuǎn)儲方式海量轉(zhuǎn)儲動態(tài)海量轉(zhuǎn)儲靜態(tài)海量轉(zhuǎn)儲增量轉(zhuǎn)儲動態(tài)增量轉(zhuǎn)儲靜態(tài)增量轉(zhuǎn)儲7.肅4.作2日志課文件日志怎文件日志跑文件善是用陶來記鍵錄事云務(wù)對廣數(shù)據(jù)辮庫的暈更新場操作歡的文以件日志是文件陳的格厲式以記梯錄為蟲單位加的日截志文耳件以數(shù)逗據(jù)塊惠為單蛾位的陜?nèi)罩就嵛募?、以搏記錄井為單植位日鐘志文備件內(nèi)肝容各個聞事務(wù)估的開倚始標(biāo)牢記(B鹽EG政IN議T逆RA凝NS役AC逼TI嚴(yán)ON宏)各個襖事務(wù)煙的結(jié)憐束標(biāo)表記(C幸OM亭MI村T或RO預(yù)LL蜜BA直CK另)各個爪事務(wù)必的所墊有更主新操貓作每條別日志狡記錄平的內(nèi)只容事務(wù)塔標(biāo)識操作溪類型感(插習(xí)入、面刪除朋或修珠改)操作越對象鈔(記袖錄內(nèi)喜部標(biāo)哥識)更新律前數(shù)脈據(jù)的幕舊值能(對低插入飼操作畫而言火,此笑項為月空值魯)更新胞后數(shù)蘇據(jù)的泳新值恢(對集刪除障操作智而言,此項劇為空飲值)2、以現(xiàn)數(shù)據(jù)孩塊為養(yǎng)單位挽的日嶺志文制件內(nèi)忽容事務(wù)頑標(biāo)識更新也前數(shù)閣據(jù)所燭在的句整個嘉數(shù)據(jù)連塊的殘值更新踏后整段個數(shù)算據(jù)塊賞的值日志缸文件朱的作敘用事務(wù)懸故障忘恢復(fù)系統(tǒng)激故障隆恢復(fù)協(xié)助后備創(chuàng)副本進行粉介質(zhì)倒故障洪恢復(fù)如果臟靜態(tài)屠轉(zhuǎn)儲源完成級后,周仍能膽定期叢轉(zhuǎn)儲叮日志察文件申,則蒜在數(shù)搬據(jù)庫租毀壞守后重攻裝數(shù)炸據(jù)副瀉本后竿,可連以利櫻用這助些日致志文推件副井本對召已完駐成的呀事務(wù)進行影重做位處理這樣不必根重新用運行下那些各已完核成的岡事務(wù)躁程序就可侄把數(shù)鼻據(jù)庫兔恢復(fù)刷到故檔障前第某一麥時刻逢的正譜確狀雙態(tài)圖7.英4故障輕發(fā)生舅點靜態(tài)亮轉(zhuǎn)儲挨運行循事務(wù)↓正常娘運行─┼憐──僅──唯──跨┼─切──來──悉──莊──擱─┼改──TaTbTf登記竊日志脆文件└─娘──掀──斤──鞋──寬──┴──重裝賊后備寄副本它利越用日映志文錘件恢躺復(fù)事芝務(wù)蠶繼續(xù)泰運行介質(zhì)塞故障御恢復(fù)──滲──粉──那──減─┴--枕--懷-─--粘--腦--賺-┴─塔──吼──持─登記棚日志喇文件└─漿──照──矛─登記織日志摔文件拳的原誤則登記肉的次考序嚴(yán)勾格按揉并行薪事務(wù)音執(zhí)行檔的時瘦間次址序必須崗先寫冒日志畫文件悅,后航寫數(shù)獸據(jù)庫1、寫庭日志湊文件萬操作躺:把早表示疑這個膛修改買的日范志記研錄寫愚到日船志文癥件2、寫復(fù)數(shù)據(jù)許庫操餡作:豈把對諸數(shù)據(jù)尚的修魯改寫凈到數(shù)謠據(jù)庫誰中先寫句日志兵文件劇原則寫數(shù)產(chǎn)據(jù)庫和寫日屆志文萌件是兩挎?zhèn)€不乓同的庭操作干、在協(xié)這兩埋個操劍作之藥間可乓能發(fā)葉生故若障如果妹先寫勒了數(shù)味據(jù)庫粘修改村,而花在日樓志文過件中顯沒有貓登記訓(xùn)下這成個修嗓改,牽則以起后就詳無法善恢復(fù)揮這個布修改如果掀先寫風(fēng)日志協(xié),但四沒有蹈修改睬數(shù)據(jù)駛庫,舉按日姐志文蛙件恢疾復(fù)時球只不鐘過是搞多執(zhí)炭行一退次不傲必要悅的UN覽DO操作壞,并棗不會簡影響覽數(shù)據(jù)糠庫的研正確宴性7.吵5恢復(fù)繩策略1.事務(wù)成故障企的恢起復(fù)——日志氣文件事務(wù)鬼故障得:事敵務(wù)在攝運行巾至正憶常終影止點猴前被掠中止恢復(fù)束方法旨:由睬恢復(fù)劈燕子系倦統(tǒng)利僻用日志即文件撤消突(UN坦DO)該事銳務(wù)已婦對數(shù)御據(jù)庫米進行樹的修璃改事務(wù)糊故障毀的恢欲復(fù)由債系統(tǒng)折自動誤完成永,對栽用戶決透明恢復(fù)童步驟1.從最晨后向顛前掃擺描日握志文棵件,窮查找啄該事數(shù)務(wù)的偏更新饒操作2.對該憂事務(wù)版的更按新操次作執(zhí)晴行逆津操作(1勸)插入營操作龍,前則相遠(yuǎn)當(dāng)于合做刪判除操峰作(2辱)刪除膏操作柱,則艦相當(dāng)競于做幕插入問操作(3竟)修改甚操作勻,則惹用修改形前值代替修改知后值3.繼續(xù)涼反向梁掃描獨日志獲文件默,查禽找該殃事務(wù)蹄的其讀他更只新操侍作,幅并做熟同樣衣處理4.如此暑處理召下去威,直零至讀劍到此精事務(wù)此的開彩始標(biāo)饞記,耳事務(wù)余故障透恢復(fù)情就完昂成了2.系統(tǒng)瞎故障彩的恢玩復(fù)——日志葬文件系統(tǒng)霉故障(1事)一些桑尚未得完成都的事墨務(wù)對寄數(shù)據(jù)噴庫的撲更新惡已寫斑入數(shù)催據(jù)庫(2夾)一些初已提瓣交事故務(wù)對斑數(shù)據(jù)傍庫的朝更新凝還留耕在緩愈沖區(qū),尚未乖寫入能數(shù)據(jù)哭庫恢復(fù)窯方法(1再)U累ND治O故障用發(fā)生揪時未前完成原的事愧務(wù)(2匆)R鳳ED詢O已完磨成的舅事務(wù)系統(tǒng)蛙故障達恢復(fù)志由系桂統(tǒng)在橫重新粗啟動衛(wèi)時自較動完淹成,路對用刑戶透遵明恢復(fù)翼步驟1.從頭很掃描形日志鍬文件RE累DO隊列:在故回障發(fā)衫生前掠已經(jīng)墳提交縣的事影務(wù)(有BE尸GI臥N遭TR敲AN棋SA延CT壤IO稍N和CO揀MM的IT滲)UN慘DO隊列:故障死發(fā)生齡時尚富未完倡成的刊事務(wù)(有BE聰GI蹲N絲式TR仙AN盛SA讀CT麗IO股N,無CO沙MM些IT系)2.對UN棋DO隊列盜事務(wù)符進行UN杜DO處理對每幫個事私務(wù)用“更匪新前兩的值李”寫入矛數(shù)據(jù)節(jié)庫3.對RE眉DO隊列憲事務(wù)壇進行RE病DO處理對每鼠個事網(wǎng)務(wù)用“更鼻新后部的值運”寫入堤數(shù)據(jù)怒庫3.介質(zhì)歌故障短的恢罰復(fù)步檢驟——后備債副本+日志礙文件冊副本1.裝入您最新億的后裹備副的本,監(jiān)使數(shù)姨據(jù)庫揭恢復(fù)席到最揭近一次轉(zhuǎn)充儲時撿的一移致性吩狀態(tài)(1車)靜態(tài)張轉(zhuǎn)儲的數(shù)前據(jù)庫刊副本傷,裝翅入后勸數(shù)據(jù)訂庫即某處于探一致舅性狀里態(tài)(2濟)動態(tài)受轉(zhuǎn)儲的數(shù)蚊據(jù)庫欲副本鑰,還蕉須同倚時裝統(tǒng)入轉(zhuǎn)嫂儲開龍始時遙刻的日志懼文件室副本,利誰用與砍恢復(fù)丘系統(tǒng)垂故障姨相同睛的方版法(膚即RE累DO數(shù)+U字ND獲O),才能制將數(shù)萄據(jù)庫臺恢復(fù)姐到一愈致性啞狀態(tài)2.裝入逐相應(yīng)連的日志臨文件親副本,重做已完冰成的滾事務(wù)(1杠)掃描京日志握文件折,找視出故半障發(fā)卷生時喂已提遲交的幼事務(wù)梢的標(biāo)墻識,子將其飽記入票重做汗隊列(2眠)然后甘正向挺掃描從日志略文件荒,對遵重做廟隊列必中的頃所有蔬事務(wù)壘進行膝重做壓處理室。將跡日志儉記錄熄中“鞏更新王后的茅值”悲寫入字?jǐn)?shù)據(jù)慶庫ho遣me役wo你rk16呈0頁1,鴨7第八忽章欣并發(fā)臨控制并發(fā)晃控制躍機制神的任悄務(wù)(1圍)對并迫發(fā)操載作進腹行正糞確調(diào)糠度(2驚)保證讓事務(wù)搭的隔姨離性(3護)保證捕數(shù)據(jù)掠庫的意一致慮性數(shù)據(jù)醬庫的系不一仗致性(圖8.破2a送)
讀A=16
A←A-1寫回A=15①讀A=16
②
③A←A-1寫回A=15
④事務(wù)T2事務(wù)T1并發(fā)球操作萬帶來畝的數(shù)團據(jù)不閱一致見性丟失陸修改不可凍重復(fù)墾讀讀“蘆臟”墻數(shù)據(jù)一、圓丟失握修改事務(wù)1與事循務(wù)2從數(shù)葛據(jù)庫林中讀遵入同尸一數(shù)視據(jù)并歉修改港,事務(wù)2的提撫交結(jié)貞果破袍壞了脊事務(wù)1提交夠的結(jié)喪果,導(dǎo)致飾事務(wù)1的修各改被棟丟失二、齊不可勺重復(fù)拔讀事務(wù)1讀取框數(shù)據(jù)冶后,炎事務(wù)2執(zhí)行鋪更新粥操作爹,使事務(wù)1無法坊再現(xiàn)醫(yī)前一失次讀至取結(jié)封果不可塔重復(fù)木讀(維一)貴圖8.唱2b事務(wù)1讀取豈某一挺數(shù)據(jù)柏后,事務(wù)2對其阿做了毅修改岸,當(dāng)事松務(wù)1再次尼讀該叼數(shù)據(jù)撐時,得到紙與前阻一次暖不同有的值
讀B=100B←B*2寫回B=200
①
讀A=50讀B=100求和=150②
③讀A=50讀B=200求和=250(驗算不對)T2T1不可站重復(fù)促讀(賤二)事務(wù)1讀取減某一問數(shù)據(jù)萌后,事務(wù)2刪除筆了其刪中部紐奉分記絡(luò)錄,當(dāng)事眉務(wù)1再次陽讀取易數(shù)據(jù)呢時,發(fā)現(xiàn)使某些械記錄旁神秘視地消稠失了不可胳重復(fù)少讀(她三)事務(wù)1讀取獎某一買數(shù)據(jù)亮后,事務(wù)2插入調(diào)了一栗些記盡錄,當(dāng)事壯務(wù)1再次墾按相釣同條貸件讀辰取數(shù)捉據(jù)時杠,發(fā)現(xiàn)維多了鏡一些背記錄三、獲讀“勿臟”庭數(shù)據(jù)事務(wù)1修改逢某一購數(shù)據(jù)賓,并招將其訂寫回折磁盤希,事棚務(wù)2讀取該嗓修改張后的喊數(shù)據(jù)違后,播事務(wù)1由于撥某種馳原因泛被撤消,侮這時斗事務(wù)1已修蜻改過脖的數(shù)危據(jù)恢音復(fù)原廁值,袖事務(wù)2讀到經(jīng)的數(shù)瓶據(jù)就誕與數(shù)授據(jù)庫致中的奧數(shù)據(jù)森不一故致,常是不正確的旁數(shù)據(jù),又毅稱為“臟去”數(shù)桑據(jù)圖8.猛2c
讀C=200
①讀C=100C←C*2寫回C②
③ROLLBACKC恢復(fù)為100T2T18.戴2封業(yè)鎖事務(wù)T在對米某個矛數(shù)據(jù)鏟對象少操作球之前拋,先扭向系訴統(tǒng)發(fā)俱出請超求,幟對其地加鎖加鎖卡后事騰務(wù)T就對振該數(shù)免據(jù)對壘象有燦了一賽定的批控制堤,在描事務(wù)T釋放蘋它的膚鎖之駛前,脖其它迎的事貸務(wù)不渡能更奮新此皇數(shù)據(jù)詠對象基本總的封秀鎖類翅型排它駐鎖(eX愚cl灘us珍iv層elo暫ck蟲s,記為X鎖)共享渠鎖(Sh赤ar玻e害lo憤ck忠s,記為S鎖)排它貌鎖X鎖若事釣務(wù)T對數(shù)肅據(jù)對班象A加上X鎖,死則只允窮許T讀取醬和修改A,其它脆任何鳴事務(wù)感都不刺能再糞對A加任金何類羅型的鎖,故直到T釋放A上的希鎖只允弄許T讀取鄉(xiāng)豐和修沉改A共享班鎖S鎖若事嘴務(wù)T對數(shù)言據(jù)對遠(yuǎn)象A加上S鎖,嚼則其鄙它事步務(wù)只霞能再對A加S鎖,糕而不扎能加X鎖,城直到T釋放A上的S鎖事務(wù)豈只能癥讀A圖8.脂3封鎖概類型譯的相石容矩除陣T1T2XS-XNNYSNYY-YYY8.暴3封鎖父協(xié)議何時顛申請X鎖或S鎖持鎖復(fù)時間何時然釋放1.一級穴封鎖頓協(xié)議事務(wù)T在修改數(shù)據(jù)R之前瘡必須菌先對走其加X鎖,直爭到事務(wù)卵結(jié)束才釋瓜放事務(wù)座結(jié)束疑:正直常結(jié)雪束(CO狗MM涉IT)和非你正常負(fù)結(jié)束(RO貼LL辨BA嚼CK)1級封肌鎖協(xié)舊議可凝防止丟失氣修改T1T2①
XlockA獲得②
讀A=16
③A←A-1寫回A=15CommitUnlockA④
⑤
XlockA等待等待等待等待獲得XlockA讀A=15A←A-1寫回A=14CommitUnlockA
防止豎丟失秋修改(圖8.臺4a留)1級封殃鎖協(xié)課議中蹈,讀柿數(shù)據(jù)鐵,不降需要評加鎖辭,所袖以它不能喉保證敗可重蘇復(fù)讀獻和不摸讀“很臟”蜓數(shù)據(jù)
讀A=15①
XlockA獲得②
讀A=16
A←A-1寫回A=15③
④RollbackUnlockA
T2T1讀臟嬸數(shù)據(jù)
XlockB獲得
讀B=100B←B*2寫回B=200CommitUnlockB①讀A=50讀B=100求和=150②③讀A=50讀B=200求和=250(驗算不對)
T2T1不可選重復(fù)音讀2.二級沿封鎖程協(xié)議1級封套鎖協(xié)扶議+事務(wù)T在讀取數(shù)據(jù)R前必旺須先踩加S鎖,讀完巧后即可考釋放S鎖2級封旱鎖協(xié)炭議可摧以防避止丟失粗修改和讀“細(xì)臟”鹿數(shù)據(jù)①
XlockC讀C=100C*2寫回C=200②③ROLLBACK(C恢復(fù)為100)UnlockC
SlockC等待等待等待等待等待獲得SlockC讀C=100UnlockCCommitT2T1不讀東臟數(shù)邊據(jù)(圖8.跌4c修)2級封思鎖協(xié)穴議中抹,由津于讀叮完數(shù)刻據(jù)后朽即可拜釋放S鎖,寨所以易它不唉能保殼證可重始復(fù)讀①
SlockA獲得讀A=50UnlockA②SlockB獲得讀B=100UnlockB③求和=150
XlockB等待等待獲得XlockB讀B=100B←B*2寫回B=200CommitUnlockBT2T1④SlockA獲得讀A=50UnlockASlockB獲得讀B=200UnlockB求和=250(驗算不對)
T2T1(續(xù))不可刻重復(fù)劍讀3.三級訓(xùn)封鎖矛協(xié)議1級封救鎖協(xié)龍議+事務(wù)T在讀取數(shù)據(jù)R之前麗必須線先對余其加S鎖,直黃到事務(wù)籮結(jié)束才釋佳放3級封闊鎖協(xié)華議可柳防止丟失黨修改委、讀鵝臟數(shù)槽據(jù)和隱不可重重復(fù)殺讀T1T2①
SlockA讀A=50SlockB讀B=100求和=150②
③讀A=50讀B=100求和=150CommitUnlockAUnlockB④
⑤
XlockB等待等待等待等待等待等待等待等待獲得XlockB讀B=100B←B*2寫回B=200CommitUnlockB可重百復(fù)讀(圖8.稿4b菊)T1T2①XlockC讀C=100C←C*2寫回C=200②
③ROLLBACK(C恢復(fù)為100)UnlockC④
⑤
SlockC等待等待等待等待獲得SlockC讀C=100CommitCUnlockC不讀繡臟數(shù)擇據(jù)表8.梢1不同剃級別仰的封估鎖協(xié)怨議8.檢4活鎖贏和死膚鎖1.活鎖(圖8.傻5a差)先來殖先服萍務(wù)當(dāng)多蔥個事煤務(wù)請切求封勺鎖同出一數(shù)林據(jù)對蠢象時,按請阻求封鎖的先后希次序?qū)@咽些事影務(wù)排岡隊,數(shù)據(jù)細(xì)對象禁上的鎖一扒旦釋邀放,菌首先登批準(zhǔn)疊申請世隊列廟中第一俱個事躬務(wù)獲得鎖2.死鎖(圖8.扶5b畝)lo怨ckR1...lo便ck懲R2等待等待等待...lo葉ck耍R2..lo讓ckR1等待等待.T1名T22.飲1死鎖蠅的預(yù)學(xué)防產(chǎn)生腰死鎖填的原叼因是跪兩個允或多芬個事尾務(wù)都擴已封干鎖了蒙一些數(shù)微據(jù)對她象,稻然后叔又都鞭請求扇對已隸被其伸他事圖務(wù)封統(tǒng)鎖的數(shù)證據(jù)對韻象加草鎖,幕從而狐出現(xiàn)出死等宵待方法影一:乞一次漠封鎖躍法要求腥每個成事務(wù)捆必須一次將所習(xí)有要科使用肆的數(shù)牲據(jù)全部秘加鎖,否穴則就跑不能緞繼續(xù)啟執(zhí)行存在晴的問波題:只降低免并發(fā)什度一.把事借務(wù)要思用到膝的全榨部數(shù)提據(jù)加舞鎖,持?jǐn)U大過了封屢鎖的巧范圍二.難以去確定明每個寄事務(wù)魚要封擠鎖的勇數(shù)據(jù)誘對象貼,只載有擴捎大封基鎖范副圍方法遺二:重順序泰封鎖復(fù)法預(yù)先交對數(shù)蘆據(jù)對橫象規(guī)謠定一菊個封叮鎖順磚序,授所有蜻事務(wù)權(quán)都按燭這個頑順序岔實行弓封鎖順序哈封鎖訓(xùn)法存怕在的汁問題1.維護勒資源砌的封恨鎖順霞序成邁本太爐高2.事務(wù)鋼在執(zhí)佳行過苗程中明才能占確定尼封鎖錢某些妖對象衫時,蕉很難統(tǒng)按照釋順序乘去加潛鎖2.毒2死鎖貼的診繁斷——超時勿法如果園一個光事務(wù)塵的等朱待時礎(chǔ)間超時過了憤規(guī)定優(yōu)的時悉限,笨就認(rèn)拐為發(fā)海生了緩死鎖優(yōu)點察:實撇現(xiàn)簡夜單缺點1.有可堅能誤述判死由鎖2.時限孕若設(shè)里置得買太長堅,死丈鎖發(fā)支生后拌不能優(yōu)及時漠發(fā)現(xiàn)2.劍2死鎖廢的診耀斷——等待精圖法事務(wù)帶等待石圖是儲一個示有向毯圖G=(T,U)T為結(jié)羨點的頂集合奇,每別個結(jié)豆點表踩示正匹運行我的事湯務(wù)U為邊骨的集求合,堂每條封邊表齡示事雹務(wù)等座待的栗情況若T1等待T2,則T1,T2之間眨劃一印條有仗向邊漢,從T1指向T2T1T2并發(fā)虜控制驕子系股統(tǒng)周但期性方地檢困測事羅務(wù)等尺待圖巨,如冤果發(fā)庭現(xiàn)圖坡中存紐奉在回施路,閉則表吩示系聰統(tǒng)中確出現(xiàn)版了死澆鎖2.照3解除樓死鎖選擇擱一個看處理旦死鎖群代價蝦最小襲的事柜務(wù),杜將其遣撤消,緒釋放徑此事馳務(wù)持羞有的毀所有退的鎖閑,使由其它亦事務(wù)能艱繼續(xù)辮運行珍下去8.芒5可串靜行化車的調(diào)劑度可串吐行化鄉(xiāng)豐(Se袍ri暮al短iz強ab先le)的調(diào)燒度多個略事務(wù)青的并蘿發(fā)執(zhí)毛行是正確的,覆當(dāng)且飛僅當(dāng)委其結(jié)域果與按某一裕次序析串行地執(zhí)墾行它蛛們時篩的結(jié)葡果相宋同Ex旅am園pl撒e事務(wù)1:讀B;A=矛B+米1;寫回A;事務(wù)2:讀A;B=竄A+腔1;寫回B;假設(shè)A的初拿值為2,B的初維值為2串行符調(diào)度哄(一急)(圖8.演7a糕)Sl目oc拒kBY=新B=燙2Un屬lo銅ck投BXl傭oc胞kAA=偽Y+濱1寫回A(故=3液)Un豈lo椅ck洋ASl賭oc版kAX=旱A(chǔ)=摧3Un博lo溝ck樸AXl題oc雷kBB=崗X+繳1寫回B(兩=4講)Un夸lo斥ck嫁BT1T2串行干調(diào)度辦(二慘)(圖8.燃7b筐)Sl酬oc級kBY=喊B=雄3Un轟lo努ck劃BXl火oc防kAA=竹Y+禽1寫回A(滔=4貪)Un樸lo坐ck仙ASl娘oc娃kAX=損A=懸2Un彩lo斤ck扶AXl腥oc猾kBB=淡X+貿(mào)1寫回B(自=3棄)Un治lo慶ck尤BT1T2不可親串行瞇化的版調(diào)度(圖8.你7c密)Sl踐oc療kBY=怕B=離2Un請lo裹ck裙BXl貝oc耐kAA=蘭Y+這1寫回A(琴=3撥)Un釋lo名ck暴ASl屬oc腔kAX=答A=軍2Un自lo蹲ck纖AXl爭oc鉛kBB=禮X+拾1寫回B(青=3爛)Un米lo班ck更BT1T2執(zhí)行琴結(jié)果波與任卵何一鏈個串宵行調(diào)執(zhí)度的回結(jié)果粘都不睬同,毯是錯需誤的且調(diào)度可串
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年人教A版九年級地理下冊月考試卷
- 2025年蘇教新版七年級物理下冊階段測試試卷含答案
- 2025年人教版選修3歷史上冊階段測試試卷含答案
- 2025年浙科版七年級物理下冊階段測試試卷含答案
- 2025年湘師大新版八年級生物下冊階段測試試卷含答案
- 2025年北師大版八年級生物上冊階段測試試卷含答案
- 2025年浙教版八年級地理下冊階段測試試卷
- 2025年湘教版選修4歷史下冊月考試卷含答案
- 2025年統(tǒng)編版2024八年級歷史上冊月考試卷
- 2025年新科版八年級地理下冊月考試卷
- 完整版秸稈炭化成型綜合利用項目可行性研究報告
- 油氣行業(yè)人才需求預(yù)測-洞察分析
- 《數(shù)據(jù)采集技術(shù)》課件-Scrapy 框架的基本操作
- 2025年河北省單招語文模擬測試二(原卷版)
- 高一化學(xué)《活潑的金屬單質(zhì)-鈉》分層練習(xí)含答案解析
- DB34∕T 4010-2021 水利工程外觀質(zhì)量評定規(guī)程
- 2024年內(nèi)蒙古中考英語試卷五套合卷附答案
- 2024年電工(高級)證考試題庫及答案
- 三年級上冊脫式計算100題及答案
- 儲能電站火災(zāi)應(yīng)急預(yù)案演練
- 人教版(新插圖)二年級下冊數(shù)學(xué) 第4課時用“進一法”和“去尾法”解決簡單的實際問題 教學(xué)課件
評論
0/150
提交評論