freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

華南師范大學數據庫系統(tǒng)復習-資料下載頁

2025-04-17 00:01本頁面
  

【正文】 事務一旦提交,它對數據庫的影響就是永久性的。2. 掌握事務控制的多個SQL語句。兩種結束方式(提交或回滾)的含義及區(qū)別。begin transaction:開始事務mit(transaction):提交事務,若此時事務正常結束,事務所做的修改操作都有效且永久地寫入數據庫。事務沒有執(zhí)行完Commit之前,因某種原因(故障)而終止了,那么系統(tǒng)就會自動地回滾這個事務。rollback(transaction):回滾事務,事務非正常結束,事務所做的操作修改都無效且必須撤銷(undo)如果SQL語句處于某個事務的Begin transaction和Commit/Rollback之間,那么這些語句就屬于這個事務。如果以上不成立,那么這個SQL語句本身構成一個獨立的事務。如:Begin Transaction Update account set money= money - 50 where no=‘A’Update account set money= money + 50 where no=‘B’Commit3. 熟記并發(fā)引起的三類數據不一致問題,它們是如何發(fā)生的(過程?)。產生不一致問題的根本原因是事務在并發(fā)執(zhí)行(調度)時,沒有保證隔離性。丟失修改:并發(fā)調度兩個事務T1和T2,T1和T2從數據庫讀入同一數據后分別修改,T1提交后T2再提交,T2提交的修改覆蓋了T1提交的修改,導致T1的修改丟失。不可重復讀:事務T1讀取某些數據之后,T2對數據記錄進行了插入/刪除/更新操作,當T1再次讀取數據時,得到的是前一次不同的值。讀“臟”數據:“臟”數據是其他事務修改后但還沒提交的數據。事務T1修改某一數據,并寫入數據庫,但尚未提交。T2讀取該數據之后,可能因為該數據還未提交,后面被撤銷,變成無效數據。4. 并發(fā)執(zhí)行(調度)的正確性準則:可串行化——等價于一個串行調度。5. 并發(fā)控制的任務:保證事務的并發(fā)執(zhí)行(調度)是正確的/有隔離性/可串行化,避免不一致問題的產生。常見的一種實現(xiàn)方法是封鎖。6. 封鎖的類型:排他鎖(寫鎖、X鎖)、共享鎖(讀鎖、S鎖)、更新鎖(U鎖)、多種意向鎖等。每種鎖的含義(例如排他鎖是讀+寫,共享是讀,意向讀是讀一部分),相容關系?封鎖的粒度越大=范圍越大=沖突可能性↑=并發(fā)度↓1)排它鎖(寫鎖,X鎖):一個事務對數據對象A操作(寫)之前,給它加上X鎖。獲得X鎖之后,該事務可以寫+讀。此時其他事務不能再加任何鎖直到X鎖被釋放。2)共享鎖(讀鎖,S鎖):一個事務對數據A進行讀取操作前,給它加上S鎖,獲得S鎖之后,用戶可以讀,但不可以寫。其他事務可以對A加更多的鎖(X鎖除外)。3)更新鎖(U鎖):對數據加U鎖,然后讀取到內存,在內存中更新數據A的值(此時其他事務可以對它加S鎖進行讀?。H缓笊暾垖鎖升級為X鎖(如果A有其他事務的讀鎖,則要延遲等待到所有S鎖釋放才能申請),升級后將更新寫入外存。4)意向鎖(部分鎖):事務在一個小粒度對象上加S/X鎖,之前先要對上級的大粒度對象加意向S/X鎖,表示要對這個大粒度對象“讀/寫一部分”。5)意向共享鎖(IS鎖):表示要讀取上級粒度的一部分頁面或記錄,此時一部分頁面或記錄上會對應存在S鎖。6)意向排它鎖(IX鎖):表示事務打算寫入該數據對象的一部分。7)共享意向排它鎖(SIX鎖):表示事務打算讀取該整個數據對象(全部下級粒度) ,和寫入該數據對象的一部分(一部分下級粒度)。SXISIXSIXS√√XIS√√√√IX√√SIX√7. 有哪幾種封鎖協(xié)議?規(guī)則是什么?可分別解決哪些數據不一致性問題?兩段封鎖協(xié)議是可串行化調度的充分非必要條件。封鎖協(xié)議:事務對數據對象加鎖時需遵守的規(guī)則(什么(讀/寫)操作要加鎖?何時加?何時釋放?)。1)一級封鎖:寫操作加鎖,第一次read/write之前加X鎖,事務結束才釋放。讀操作無要求(不加鎖)。解決修改丟失問題。2)二級封鎖:一級封鎖+讀操作加鎖(事務每次read之前先加S鎖, read后即可釋放)。解決讀臟數據的問題。3)三級封鎖:一級封鎖+讀操作加鎖(事務第一次read之前先加S鎖,事務結束才釋放)。解決不可重復讀的問題。4)兩端封鎖協(xié)議:在對任何數據進行讀寫之前,事務首先要獲得對該數據的S或X封鎖 ,釋放封鎖后不能再讀、寫該數據。例如SLOCK(B) read(B) unSLOCK(B) … A:=A+*B …8. 不同類型的數據庫故障(看課件)。以及它們的影響范圍(事務本身?DBMS系統(tǒng)?內存中的數據?磁盤上的數據?)。事務故障(事務無法繼續(xù)執(zhí)行而失敗,如內部邏輯錯誤。只影響了事務本身)系統(tǒng)故障:(DBMS停止運行,如硬件、軟件錯誤。影響了整個DBMS和內存中的數據)介質故障(硬盤上的數據部分或全部丟失,如硬件損壞,病毒或黑客攻擊。影響磁盤上的數據)9. 數據庫恢復技術的基本原理:冗余。建立冗余的兩種方法:數據備份和登記日志文件。10. 靜態(tài)備份 vs 動態(tài)備份(有否一致性;是否允許用戶運行事務來操作數據庫)。靜態(tài)備份:保持數據庫副本一致性,但備份時候數據庫不可用動態(tài)備份:實現(xiàn)復雜,不能保證數據庫副本的一致性,備份時數據庫可用。11. 日志文件的定義:是用來記錄事務對數據庫進行更新操作(插入、刪除、更新)的文件。12. 日志文件的基本內容(事務開始一條;事務結束一條;事務若干次更新若干條)。事務開始的標志、事務結束的標志、事務所有修改操作。13. 在登記更新操作的日志記錄時,更新前后的舊值與新值都要保存到日志記錄中。14. 什么是運行記錄優(yōu)先(先寫日志)原則?“先寫日志文件”:對一個寫/修改操作,必須先登記日志,后操作實際數據(插入/刪除/更新)15. 熟記用日志文件作數據庫恢復,包括事務故障、系統(tǒng)故障和介質故障的大致恢復過程。1)事務故障:反向掃描日志文件,查找該事務的全部修改記錄 — 對每個屬于該事務的修改記錄撤消之:將把錄中的“修改前舊值”寫入磁盤 — 直至掃描到該事務的開始記錄,事務故障恢復即告完成。2)系統(tǒng)故障:正向掃描日志文件,找到故障發(fā)生前已提交(有開始標志,有Commit標志)的全部事務,把其事務標識放入重做隊列;找到故障發(fā)生前尚未提交(有開始標志,無Commit標志)的全部事務,將其事務標識記入撤消隊列 — UNDO撤消隊列中所有事務——反向掃描日志文件,找到修改操作屬于這些事務的,撤消之:把“修改前舊值”寫入磁盤 — REDO重做隊列中所有事務——正向掃描日志文件,找到修改操作屬于這些事務的,重做之:把“修改后新值”寫入磁盤。3)磁盤故障:裝入最近一次備份的數據庫副本,即恢復數據庫到最近一次備份時的狀態(tài) — 裝入備份后到故障發(fā)生時的日志文件或副本,然后撤銷那些失敗事務,重做那些提交事務。第13頁 共12
點擊復制文檔內容
教學教案相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1