版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
數(shù)據(jù)庫原理與應(yīng)用快速入門7.1關(guān)于事務(wù)7.2關(guān)于并發(fā)控制第7章
了解事務(wù)管理7.1.1了解事務(wù)的概念與特征7.1.2了解MySQL事務(wù)模式7.1.3了解事務(wù)的工作原理7.1關(guān)于事務(wù)7.1.4了解數(shù)據(jù)庫系統(tǒng)的故障種類7.1.5了解事務(wù)恢復的實現(xiàn)技術(shù)7.1.1了解事務(wù)的概念與特征任何程序在計算機系統(tǒng)中運行時難免會出現(xiàn)故障,數(shù)據(jù)庫系統(tǒng)也是如此。為了消除故障造成的嚴重后果,保障數(shù)據(jù)庫處于正確的狀態(tài),數(shù)據(jù)庫中引入了事務(wù)(Transaction)的概念。所謂事務(wù),指的是一個單元的工作。這個單元中可能包括很多工作步驟,它們要么全做,要么全不做。從SQL語句的角度看,在數(shù)據(jù)庫中,事務(wù)包含一條或多條SQL語句,這些語句,要么全部執(zhí)行,要么全部撤銷。7.1.1了解事務(wù)的概念與特征事務(wù)具有以下四個特征:1)原子性:一個事務(wù)是一個邏輯工作單位,是一個不可分割的整體。事務(wù)中包含的操作要么都做,要么都不做。2)一致性:事務(wù)的執(zhí)行結(jié)果必須使數(shù)據(jù)庫從一個一致性狀態(tài)變?yōu)榱硪粋€一致性狀態(tài)。一致性與原子性密切相關(guān)。3)隔離性:一個事務(wù)的執(zhí)行不能被其他事務(wù)干擾。即一個事務(wù)內(nèi)部的操作及使用的數(shù)據(jù)對其他并發(fā)事務(wù)是隔離的,并發(fā)執(zhí)行的各個事務(wù)之間互不干擾。4)持續(xù)性:一個事務(wù)成功完成之后,它對數(shù)據(jù)庫的所有更新都是永久的。7.1.2了解MySQL事務(wù)模式在MySQL中,事務(wù)提交方式有自動提交和手動提交兩種。1、自動提交自動提交事務(wù)是MySQL默認的事務(wù)提交方式。每條單獨的語句都是一個事務(wù)。在與MySQL連接后,如不做更改,則采用自動提交模式。7.1.2了解MySQL事務(wù)模式2、手動提交用戶可以執(zhí)行以下命令,設(shè)置MySQL為手動提交事務(wù)模式。SET@@autocommit=0;該設(shè)置只對當前的MySQL命令行窗口有效,打開一個新的窗口時,默認還是自動提交事務(wù)模式。7.1.2了解MySQL事務(wù)模式使用SQL語句來定義事務(wù),即為顯示事務(wù)。SQL定義顯示事務(wù)的語句有三條:STARTTRANSACTIONCOMMITROLLBACK7.1.2了解MySQL事務(wù)模式事務(wù)以STARTTRANSACTION開始,以COMMIT或ROLLBACK結(jié)束。COMMIT表示提交,當事務(wù)所有操作能夠正常執(zhí)行后,提交所有操作,事務(wù)執(zhí)行完成。ROLLBACK表示回滾,即在事務(wù)運行的過程中發(fā)生了某種故障,操作不能繼續(xù)執(zhí)行,系統(tǒng)將事務(wù)中對數(shù)據(jù)庫所有已完成的操作全部撤消,回滾到事務(wù)開始時的狀態(tài)。7.1.2了解MySQL事務(wù)模式【例7-1】假設(shè)在sc表中,學號為“210101001”的學生由于某些原因不選004號課程而改選002號課程,并且該課程的考試成績?yōu)?0分。嘗試完成以下操作,驗證事務(wù)的特征。1、首先將當前MySQL命令行窗口設(shè)置為手動提交事務(wù)模式:SET@@autocommit=0;2、查看學生初始選課狀態(tài):SELECT*FROMscWHEREstuId='210101001'ANDcorId='004';7.1.2了解MySQL事務(wù)模式【例7-1】假設(shè)在sc表中,學號為“210101001”的學生由于某些原因不選004號課程而改選002號課程,并且該課程的考試成績?yōu)?0分。嘗試完成以下操作,驗證事務(wù)的特征。3、將更改課程號和成績這兩個操作定義為一個事務(wù):7.1.2了解MySQL事務(wù)模式【例7-1】假設(shè)在sc表中,學號為“210101001”的學生由于某些原因不選004號課程而改選002號課程,并且該課程的考試成績?yōu)?0分。嘗試完成以下操作,驗證事務(wù)的特征。4、由于操作人員輸入錯誤,把“80”分誤寫為“8o”分(為英文字母o),導致出錯:7.1.2了解MySQL事務(wù)模式【例7-1】假設(shè)在sc表中,學號為“210101001”的學生由于某些原因不選004號課程而改選002號課程,并且該課程的考試成績?yōu)?0分。嘗試完成以下操作,驗證事務(wù)的特征。數(shù)據(jù)修改的結(jié)果如圖7-5所示。從圖中可以看到,第一步操作將課程號修改成“002”也沒有執(zhí)行。這正好體現(xiàn)了事務(wù)的特性。7.1.3了解事務(wù)的工作原理事務(wù)確保數(shù)據(jù)的一致性和可恢復性。在數(shù)據(jù)庫進行故障恢復時,事務(wù)具有重要意義。事務(wù)的工作原理如右圖所示。7.1.3了解事務(wù)的工作原理事務(wù)開始后,事務(wù)包含的所有操作都將寫到事務(wù)日志文件中。這些操作一般有兩種:一種是針對數(shù)據(jù)的操作,一種是針對任務(wù)的操作。針對數(shù)據(jù)的操作,例如插入、刪除和修改,這是典型的事務(wù)操作,處理的對象是大量的數(shù)據(jù)。針對任務(wù)的操作,例如創(chuàng)建索引,這些任務(wù)操作在事務(wù)日志中記錄一個標志,用于表示執(zhí)行了這種操作。當事務(wù)撤銷時,系統(tǒng)自動執(zhí)行這些操作的逆操作,將數(shù)據(jù)恢復到事務(wù)開始前的狀態(tài),保證系統(tǒng)的一致性。7.1.4了解數(shù)據(jù)庫系統(tǒng)的故障種類數(shù)據(jù)庫里可能出現(xiàn)的各種故障包括:1、事務(wù)內(nèi)部的故障事務(wù)故障是某些對數(shù)據(jù)庫進行操作的事務(wù)違反了系統(tǒng)設(shè)定的條件,如輸入數(shù)據(jù)錯誤、運算溢出等,使事務(wù)未能正常完成就終止(例7-1中出現(xiàn)的故障就屬于這種故障)。2、系統(tǒng)故障系統(tǒng)故障主要是由于數(shù)據(jù)庫服務(wù)器在運行過程中,突然發(fā)生操作系統(tǒng)錯誤、停電等原因造成的非正常中斷,系統(tǒng)正在執(zhí)行的事務(wù)被突然中斷,內(nèi)存緩沖區(qū)中的數(shù)據(jù)全部丟失,但硬盤、磁帶等外設(shè)上的數(shù)據(jù)未受損失(上面分析的銀行突然停電就屬于這種故障)。7.1.4了解數(shù)據(jù)庫系統(tǒng)的故障種類數(shù)據(jù)庫里可能出現(xiàn)的各種故障包括:3、介質(zhì)故障介質(zhì)故障是由于硬件的可靠性較差出現(xiàn)的存儲介質(zhì)發(fā)生物理損壞。數(shù)據(jù)庫的數(shù)據(jù)全部或部分丟失,破壞性較大。此外,還有計算機病毒等也會對數(shù)據(jù)庫系統(tǒng)構(gòu)成危害。7.1.5了解事務(wù)恢復的實現(xiàn)技術(shù)數(shù)據(jù)恢復技術(shù)的基本原則是建立冗余。這就是說,數(shù)據(jù)庫中任何一部分被破壞的或不正確的數(shù)據(jù)可以根據(jù)存儲在別處的冗余數(shù)據(jù)來重建。建立冗余數(shù)據(jù)最常用的技術(shù)是數(shù)據(jù)備份和登記日志文件。通常數(shù)據(jù)庫系統(tǒng)中,這兩種方法是一起使用的。7.1.5了解事務(wù)恢復的實現(xiàn)技術(shù)1、數(shù)據(jù)備份數(shù)據(jù)備份指的是數(shù)據(jù)庫管理員定期地將整個數(shù)據(jù)庫拷貝到磁帶或另一個磁盤上保存起來的過程。這些備用的數(shù)據(jù)文本稱為后備副本。數(shù)據(jù)備份可以分為靜態(tài)備份和動態(tài)備份。7.1.5了解事務(wù)恢復的實現(xiàn)技術(shù)1、數(shù)據(jù)備份靜態(tài)備份是在系統(tǒng)中沒有事務(wù)在執(zhí)行時進行的備份。備份操作開始時,數(shù)據(jù)庫處于一致性狀態(tài),而備份期間不允許對數(shù)據(jù)庫的任何存取、修改活動。靜態(tài)轉(zhuǎn)儲簡單,但轉(zhuǎn)儲必須等待正運行的事務(wù)結(jié)束才能進行,同樣,新的事務(wù)必須等待轉(zhuǎn)儲結(jié)束才能執(zhí)行。顯然,這會降低數(shù)據(jù)庫的可用性。動態(tài)備份是指備份期間允許對數(shù)據(jù)進行存取或修改。即備份和事務(wù)可以并發(fā)執(zhí)行。動態(tài)備份可克服靜態(tài)備份的缺點,它不用等待正在運行的用戶事務(wù)結(jié)束,也不會影響新事務(wù)的運行。但是,備份結(jié)束時后備副本上的數(shù)據(jù)并不能保證正確有效。7.1.5了解事務(wù)恢復的實現(xiàn)技術(shù)1、數(shù)據(jù)備份備份還可以分為海量備份和增量備份兩種方式。海量備份是指每次備份全部數(shù)據(jù)庫。增量備份則指每次只備份上一次備份后更新過的數(shù)據(jù)。從恢復角度看,使用海量備份得到的后備副本進行恢復一般說來會更方便些。但如果數(shù)據(jù)庫很大,事務(wù)處理又十分頻繁,則增量備份方式更實用更有效。7.1.5了解事務(wù)恢復的實現(xiàn)技術(shù)2、登記日志文件事務(wù)日志文件是用來記錄事務(wù)對數(shù)據(jù)庫的更新操作的文件。數(shù)據(jù)庫系統(tǒng)自動登記日志文件。不同數(shù)據(jù)庫系統(tǒng)采用的事務(wù)日志文件格式并不完全相同。概括起來事務(wù)日志文件主要有兩種格式:以記錄為單位和以數(shù)據(jù)為單位。7.1.5了解事務(wù)恢復的實現(xiàn)技術(shù)對于以記錄為單位的事務(wù)日志文件,文件中需要登記的內(nèi)容包括:(1)各個事務(wù)的開始(SRARTTRANSACTION)標記(2)各個事務(wù)的結(jié)束(COMMIT或ROLLBACK)標記(3)各個事務(wù)的所有更新操作這里每個事務(wù)開始的標記、每個事務(wù)結(jié)束的標記和每個更新操作均作為事務(wù)日志文件中的一個日志記錄
(logrecord)。7.1.5了解事務(wù)恢復的實現(xiàn)技術(shù)對于以數(shù)據(jù)塊為單位的事務(wù)
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年資陽市公安局公開招聘警務(wù)輔助人員的備考題庫及一套答案詳解
- 2025年晉江市文化體育和旅游局公開招聘編外人員的備考題庫完整答案詳解
- 2025年發(fā)展研究院招聘公共績效與備考題庫化研究中心項目主管崗位備考題庫及答案詳解1套
- 2025年廣漢市衛(wèi)生健康局廣漢市衛(wèi)生健康局下屬事業(yè)單位公開招聘編外聘用人員13人的備考題庫完整答案詳解
- 2025年正定產(chǎn)業(yè)投資控股集團有限公司面向社會招聘職業(yè)經(jīng)理人的備考題庫及答案詳解參考
- 2025年深圳市某單位政府項目服務(wù)支撐崗工作人員招聘備考題庫含答案詳解
- 2025年中建二局西部分局招聘備考題庫及答案詳解一套
- 語文單招試卷河北原題及答案
- 2025年阜陽市潁上縣城鄉(xiāng)水務(wù)有限公司公開招聘工作人員13人備考題庫參考答案詳解
- 2025年象州縣機關(guān)事務(wù)管理局公開招聘編外工作人員備考題庫有答案詳解
- 2025廣西柳州城市職業(yè)學院人才招聘28人(公共基礎(chǔ)知識)測試題附答案解析
- 22064,22877,23041,11041,59969《管理學基礎(chǔ)》國家開放大學期末考試題庫
- 加盟連鎖經(jīng)營政策分析與實施方案
- 電纜路徑檢測協(xié)議書
- 《烹飪工藝學》期末考試復習題庫(附答案)
- 片區(qū)供熱管網(wǎng)連通工程可行性研究報告
- 課件《法律在我身邊》
- 2025年文職倉庫保管員考試題及答案
- 2026年湖南鐵道職業(yè)技術(shù)學院單招職業(yè)技能考試必刷測試卷附答案
- 2025年重慶市大渡口區(qū)事業(yè)單位考試試題
- 管道施工圍擋施工方案
評論
0/150
提交評論