




已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
2020年3月14日 第1頁 第13章事務(wù) 本章概述本章要點本章內(nèi)容 2020年3月14日 第2頁 本章概述 對于一個有大量用戶使用的分布式數(shù)據(jù)庫管理系統(tǒng)來說 必須很好地解決多用戶使用過程中出現(xiàn)的并發(fā)性問題 提高數(shù)據(jù)庫的處理速度 僅依靠提高計算機的物理速度是不夠的 還必須充分考慮和解決數(shù)據(jù)庫系統(tǒng)的并發(fā)性問題 提高數(shù)據(jù)庫并發(fā)操作的效率 在MicrosoftSQLServer2008系統(tǒng)中 通過采用事務(wù)和鎖機制 解決了數(shù)據(jù)庫系統(tǒng)的并發(fā)性問題 本章將全面闡述MicrosoftSQLServer的事務(wù)技術(shù) 2020年3月14日 第3頁 本章要點 并發(fā)性的概念和并發(fā)性問題的特點事務(wù)的概念 類型和特點事務(wù)管理技術(shù)理解鎖的作用掌握定制鎖技術(shù)掌握查看和理解鎖信息技術(shù) 2020年3月14日 第4頁 本章內(nèi)容 13 1概述13 2事務(wù)的特點 類型和管理13 3使用鎖13 4本章小結(jié) 13 1概述 經(jīng)常有許多用戶同時訪問和使用數(shù)據(jù)庫 并發(fā)性就是兩個或兩個以上的用戶同時對數(shù)據(jù)執(zhí)行的操作 并發(fā)性問題就是并發(fā)操作時遇到的各種問題 在MicrosoftSQLServer2008系統(tǒng)中 解決并發(fā)性問題采取了事務(wù)和鎖機制 2020年3月14日 第5頁 事務(wù)和鎖 事務(wù)和鎖是兩個緊密聯(lián)系的概念 事務(wù)就是一個單元的工作 包括一系列的操作 這些操作要么全部成功 要么全部失敗 事務(wù)確保多個數(shù)據(jù)的修改作為一個單元來處理 例如 在銀行業(yè)務(wù)中有一條記賬原則 即有借必有貸 借貸必相等 為了保證這種原則 就必須確保借和貸的記錄要么同時成功 要么同時失敗 如果出現(xiàn)只記錄了借方 或只記錄了貸方 違反了記賬原則 就會出現(xiàn)記錯賬的情況 MicrosoftSQLServer通過支持事務(wù)機制管理多個事務(wù) 保證事務(wù)的一致性 通過在事務(wù)中使用鎖 可以防止其他用戶修改還沒有完成的事務(wù)中的數(shù)據(jù) 對于多用戶系統(tǒng)來說 鎖機制是必須的 在MicrosoftSQLServer系統(tǒng)中 使用事務(wù)日志來保證修改的完整性和可恢復(fù)性 2020年3月14日 第6頁 13 2事務(wù)的特點 類型和管理 事務(wù)是MicrosoftSQLServer系統(tǒng)的重要特征 一方面保證了系統(tǒng)的備份和恢復(fù) 另一方面實現(xiàn)了數(shù)據(jù)一致性機制 下面將詳細描述事務(wù)的概念 工作原理 事務(wù)的類型等內(nèi)容 2020年3月14日 第7頁 事務(wù)的概念 事務(wù)是指一個單元的工作 作為一個邏輯單元 它必須具備4個屬性 自動性 一致性 獨立性和持久性 自動性是指事務(wù)必須是一個自動的單元工作 要么執(zhí)行全部數(shù)據(jù)的修改 要么全部數(shù)據(jù)的修改都不執(zhí)行 一致性是指當事務(wù)完成時 必須使所有數(shù)據(jù)都具有一致的狀態(tài) 獨立性是指并行事務(wù)的修改必須與其他并行事務(wù)的修改相互獨立 持久性是指當一個事務(wù)完成之后 它的影響永久性地產(chǎn)生在系統(tǒng)中 也就是這種修改寫到了數(shù)據(jù)庫中 2020年3月14日 第8頁 事務(wù)的工作原理 事務(wù)確保數(shù)據(jù)的一致性和可恢復(fù)性 事務(wù)開始之后 事務(wù)所有的操作都陸續(xù)寫到事務(wù)日志中 寫到事務(wù)日志中的操作一般有兩種 一種是針對數(shù)據(jù)的操作 一種是針對任務(wù)的操作 針對數(shù)據(jù)的操作 這些操作的對象是大量的數(shù)據(jù) 有些操作是針對任務(wù)的 例如創(chuàng)建索引 這些任務(wù)操作在事務(wù)日志中記錄一個標志 用于表示執(zhí)行了這種操作 當取消這種事務(wù)時 系統(tǒng)自動執(zhí)行這種操作的反操作 保證系統(tǒng)的一致性 系統(tǒng)自動生成一個檢查點機制 這個檢查點周期地發(fā)生 2020年3月14日 第9頁 使用事務(wù)時的考慮 在使用事務(wù)時 原則上應(yīng)該使事務(wù)盡可能短并且要避免事務(wù)嵌套 事務(wù)應(yīng)該盡可能短 這是因為比較長的事務(wù)增加了事務(wù)占用數(shù)據(jù)的時間 使其他必須等待訪問該事務(wù)鎖定數(shù)據(jù)的事務(wù)延長了等待訪問數(shù)據(jù)的時間 在使用事務(wù)時 為了使事務(wù)盡可能短 應(yīng)該采取一些相應(yīng)的方法 2020年3月14日 第10頁 事務(wù)的類型 根據(jù)系統(tǒng)的設(shè)置 可以把事務(wù)分成兩種類型 一種是系統(tǒng)提供的事務(wù) 另一種是用戶定義的事務(wù) 系統(tǒng)提供的事務(wù)是指在執(zhí)行某些語句時 一條語句就是一個事務(wù) 這時 一條語句的對象既可以是表中的一行數(shù)據(jù) 也可以是表中的多行數(shù)據(jù) 甚至是表中的全部數(shù)據(jù) 因此 只有一條語句構(gòu)成的事務(wù)也可能包含了對多行數(shù)據(jù)的處理 2020年3月14日 第11頁 分布式事務(wù) 還有一種特殊的用戶定義的事務(wù) 這就是分布式事務(wù) 前面提到的事務(wù)都是在一個服務(wù)器上的操作 其保證的數(shù)據(jù)完整性和一致性是指一個服務(wù)器上的完整性和一致性 但是如果在一個比較復(fù)雜的環(huán)境中可能有多臺服務(wù)器 那么要保證在多服務(wù)器環(huán)境中事務(wù)的完整性和一致性 就必須定義一個分布式事務(wù) 在這個分布式事務(wù)中 所有的操作都可以涉及對多個服務(wù)器的操作 2020年3月14日 第12頁 管理事務(wù) BEGINTRANSACTIONBEGINDISTRIBUTEDTRANSACTIONCOMMITTRANSACTIONROLLBACKTRANSACTIONSAVETRANSACTIONSETIMPLICIT TRANSACTION 2020年3月14日 第13頁 使用SAVETRANSACTION語句 2020年3月14日 第14頁 13 3使用鎖 鎖是實現(xiàn)事務(wù)的手段 實際上鎖是保護事務(wù)和數(shù)據(jù)的方式 這種保護方式類似于日常生活中使用的鎖 下面介紹MicrosoftSQLServer系統(tǒng)中鎖的特點 2020年3月14日 第15頁 鎖的概念 鎖是防止其他事務(wù)訪問指定資源的手段 鎖是實現(xiàn)并發(fā)控制的主要方法 使多個用戶能夠同時操縱同一個數(shù)據(jù)庫中的數(shù)據(jù)而避免發(fā)生數(shù)據(jù)不一致現(xiàn)象的重要保障 一般來說 鎖可以防止臟讀 不可重復(fù)讀和幻覺讀 2020年3月14日 第16頁 SQLServer的空間特點 在MicrosoftSQLServer系統(tǒng)中 最小的空間管理單位是頁 一個頁有8K 所有的數(shù)據(jù) 日志 索引都存放在頁上 另外 使用頁還有一個限制 表中的一行數(shù)據(jù)必須在同一個頁上 不能跨頁 頁上面的空間管理單位是Extent 一個Extent是8個連續(xù)的頁 表和索引的最小占用單位是Extent 數(shù)據(jù)庫是由一個或多個表或索引組成的 即是由多個Extent組成 2020年3月14日 第17頁 可以鎖定的資源 為了優(yōu)化系統(tǒng)的并發(fā)性 應(yīng)該根據(jù)事務(wù)的大小和系統(tǒng)活動的程度鎖定不同的資源 也就是說 既可以鎖定比較大的資源 也可以鎖定比較小的資源 在MicrosoftSQLServer系統(tǒng)中 已經(jīng)非常完善地實現(xiàn)了這些要求 在MicrosoftSQLServer中可以鎖定的資源有多種 這些可以鎖定的資源分別是行 頁 Extent 表和數(shù)據(jù)庫 它們對應(yīng)的鎖分別是行級鎖 頁級鎖 Extent級鎖 表級鎖和數(shù)據(jù)庫級鎖 數(shù)據(jù)行存放在頁上 頁存放在Extent上 一個表由若干個Extent組成 而若干個表組成了數(shù)據(jù)庫 在這些可以鎖定的資源中 最基本的資源是行 頁和表 2020年3月14日 第18頁 鎖的類型和其兼容性 鎖定資源的方式有兩種基本形式 一種形式是讀操作要求的共享鎖 另一種形式是寫操作要求的排他鎖 除了這兩種基本類型的鎖 還有一些特殊情況的鎖 例如意圖鎖 修改鎖和模式鎖 在這些各種類型的鎖中 某些類型的鎖之間是可以兼容的 但多數(shù)類型的鎖之間是不兼容的 有些鎖之間是兼容的 例如共享鎖和修改鎖 有些鎖之間是不兼容的 例如排他鎖和共享鎖 表13 1列出了MicrosoftSQLServer系統(tǒng)提供的各種鎖之間的兼容性 2020年3月14日 第19頁 死鎖問題 死鎖是一個很重要的話題 在事務(wù)和鎖的使用過程中 死鎖是一個不可避免的現(xiàn)象 在下面兩種情況下會發(fā)生死鎖 第一種情況是當兩個事務(wù)分別鎖定了兩個單獨的對象 這時每一個事務(wù)都要求在另外一個事務(wù)鎖定的對象上獲得一個鎖 因此每一個事務(wù)都必須等待另外一個事務(wù)釋放占有的鎖 這時就發(fā)生了死鎖 這種是最典型的死鎖形式 死鎖的第二種情況是在一個數(shù)據(jù)庫中 有若干個長時間運行的事務(wù)執(zhí)行并行的操作 當查詢分析器處理一種非常復(fù)雜的查詢 例如連接查詢時 由于不能控制處理的順序 有可能發(fā)生死鎖現(xiàn)象 2020年3月14日 第20頁 會話級鎖和表級鎖 一般地 鎖是由系統(tǒng)自動提供的 但是在有些情況下 用戶也可以定制鎖 也就是說 用戶可以對會話級鎖和表級鎖進行定制 會話級鎖的定制包括兩個方面 事務(wù)隔離等級和鎖超時限制 事務(wù)隔離等級保護指定的事務(wù) 該事務(wù)隔離允許對一個會話中的全部事務(wù)設(shè)置隔離等級 當設(shè)置隔離等級時 就為會話中的全部語句指定了默認的鎖定行為 MicrosoftSQLServer系統(tǒng)支持5種事務(wù)隔離等級 2020年3月14日 第21頁 設(shè)置事務(wù)隔離等級 2020年3月14日 第22頁 13 4本章小結(jié) 本章全面講述了事務(wù)技術(shù) 首先 分析了并發(fā)性的概念和特點 其次 對事務(wù)的概念 類型 特點以及管理技術(shù)進行了全面研究 事務(wù)作為一個重要的數(shù)據(jù)庫技術(shù)基本概念 在保護數(shù)據(jù)庫的可恢復(fù)性和多用戶 多事務(wù)方面具有基礎(chǔ)性的作用 最后 對鎖技術(shù)進行了全面介紹 包括鎖的類型 鎖資源的特點 會話級鎖的特點 表級鎖的特點以及死鎖的特點等 2020年3月14日 第23頁 思考和練習(xí) 1 什么是并發(fā)性 2
溫馨提示
- 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)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年薄膜包衣粉合作協(xié)議書
- 自行車租賃服務(wù)品牌建設(shè)考核試卷
- 氮肥施用的農(nóng)業(yè)管理策略考核試卷
- 新媒體廣告創(chuàng)意與設(shè)計
- 2025年耐高溫濾料項目合作計劃書
- 2025年同位素分離裝置項目發(fā)展計劃
- 新時代教師思想教育體系建設(shè)
- 2025年一級建造師之一建港口與航道工程實務(wù)真題練習(xí)試卷A卷附答案
- 2025年高通量試驗反應(yīng)堆及配套產(chǎn)品合作協(xié)議書
- 2025年隔音降噪設(shè)備:隔音吸聲材料合作協(xié)議書
- 企業(yè)所得稅課件
- 2025年高考政治核心知識總結(jié)
- 2025廣西中馬欽州產(chǎn)業(yè)園區(qū)投資控股集團限公司招聘49人易考易錯模擬試題(共500題)試卷后附參考答案
- 工程過賬協(xié)議合同協(xié)議
- 托管中心晚輔老師培訓(xùn)
- 兼職顧問服務(wù)合同范本
- 人教版(新教材)高中物理選擇性必修2教學(xué)設(shè)計2:2 2 法拉第電磁感應(yīng)定律教案
- 2024-2025學(xué)年人教版數(shù)學(xué)八年級下冊期中押題重難點檢測卷(含答案)
- 廣西地方公路養(yǎng)護工程預(yù)算定額
- 《中式美食鑒賞》課件
- 姐妹間房屋轉(zhuǎn)讓合同協(xié)議
評論
0/150
提交評論