事務(wù)高度與并發(fā)控制
9.1 調(diào)度:定義在多個(gè)事務(wù)上的調(diào)度是這些事務(wù)的所有操作的一個(gè)執(zhí)行序列,代表了這些操作的執(zhí)行順序;沖突操作:事務(wù)Ti 的操作Ii與事務(wù)Tj的操作Ij是沖突的,當(dāng)且僅當(dāng)Ii 和 Ij訪問數(shù)據(jù)庫中同一個(gè)數(shù)據(jù)項(xiàng)Q,并且Ii 和 Ij中至少有一個(gè)是寫操作write(Q);沖突可串行:一個(gè)并發(fā)調(diào)度沖突等價(jià)于某個(gè)串行調(diào)度(判斷一個(gè)并行調(diào)度是否正確)
死鎖是指數(shù)據(jù)庫系統(tǒng)中部分或全部事務(wù)由于無法獲得對需要訪問的數(shù)據(jù)項(xiàng)的控制權(quán)而處于等待狀態(tài),并且將一直等待下去的一種系統(tǒng)狀態(tài)。
9.2 ACID:Atomicity原子性;Consistency一致性;Isolation隔離性;Durability持久性
9.3 1級(jí)加鎖協(xié)議要求事務(wù)T在修改數(shù)據(jù)項(xiàng)Q之前必須先對Q加X鎖,直到事務(wù)結(jié)束才釋放該鎖。事務(wù)結(jié)束包括正常結(jié)束(commit)和非正常結(jié)束(rollback)。但事務(wù)如果是只讀Q而不對其進(jìn)行修改,是不需要對Q加鎖的。
2級(jí)加鎖協(xié)議是在1級(jí)加鎖協(xié)議基礎(chǔ)上,要求事務(wù)T在讀取數(shù)據(jù)項(xiàng)Q之前必須先對其加S鎖,讀完Q后可以立即釋放S鎖。
3級(jí)加鎖協(xié)議則是在1級(jí)加鎖協(xié)議基礎(chǔ)上,要求事務(wù)T在讀取數(shù)據(jù)項(xiàng)Q之前必須先對其加S鎖,但是需要等到事務(wù)結(jié)束時(shí)才釋放該S鎖。
9.4 2階段鎖協(xié)議將每個(gè)事務(wù)的執(zhí)行過程分為加鎖階段和解鎖階段。在加鎖階段,事務(wù)可以申請獲得數(shù)據(jù)項(xiàng)上的任何類型的鎖,但不允許釋放任何鎖。在解鎖階段,事務(wù)可以釋放任何數(shù)據(jù)項(xiàng)上的任何類型的鎖,但不能再申請任何鎖。每個(gè)事務(wù)開始執(zhí)行后就進(jìn)入了加鎖階段。當(dāng)?shù)谝淮吾尫沛i后,即轉(zhuǎn)入解鎖階段。
9.5解決死鎖主要采用死鎖預(yù)防和死鎖檢測與恢復(fù)兩類方法。
死鎖預(yù)防利用死鎖預(yù)防協(xié)議,通過破壞死鎖產(chǎn)生的必要條件來避免系統(tǒng)進(jìn)入死鎖狀態(tài)。
一次性加鎖法;順序加鎖法
死鎖檢測與恢復(fù)則是允許系統(tǒng)進(jìn)入死鎖狀態(tài),并且定期檢查系統(tǒng)是否發(fā)生死鎖。當(dāng)發(fā)現(xiàn)系統(tǒng)發(fā)生死鎖后,采取相應(yīng)的恢復(fù)機(jī)制使系統(tǒng)擺脫死鎖狀態(tài)。
9.6活鎖產(chǎn)生的原因是在系統(tǒng)非死鎖狀態(tài)下,某些事務(wù)由于始終無法獲得對所需訪問的數(shù)據(jù)項(xiàng)的控制權(quán)而長期等待下去,無法繼續(xù)執(zhí)行。
9.7 鎖粒度大:被加鎖數(shù)據(jù)項(xiàng)少、事務(wù)并發(fā)執(zhí)行度低、系統(tǒng)開銷小;鎖粒度小則反之
9.8 基于鎖的并發(fā)控制技術(shù)的原理
數(shù)據(jù)庫的實(shí)施、運(yùn)行和維護(hù)
10.1 試運(yùn)行:功能測試;性能測試
10.2 數(shù)據(jù)庫維護(hù):數(shù)據(jù)庫的轉(zhuǎn)儲(chǔ)和恢復(fù);數(shù)據(jù)庫的安全性、完整性控制;數(shù)據(jù)庫性能的檢測和改善;數(shù)據(jù)庫的重組和重構(gòu)
10.3 數(shù)據(jù)庫安全:行政手段制定規(guī)范;權(quán)限管理、口令等;維護(hù)多個(gè)數(shù)據(jù)副本;防及除毒
10.4 數(shù)據(jù)庫重組:按照系統(tǒng)設(shè)計(jì)要求對數(shù)據(jù)庫存儲(chǔ)空間進(jìn)行全面調(diào)整;數(shù)據(jù)庫重構(gòu):業(yè)務(wù)小范圍變化需對數(shù)據(jù)庫邏輯結(jié)構(gòu)作必要改變。
10.5 數(shù)據(jù)庫監(jiān)控分析:DBA借助相應(yīng)工具監(jiān)測數(shù)據(jù)庫系統(tǒng)的運(yùn)行情況,對監(jiān)測數(shù)據(jù)進(jìn)行分析,評(píng)估整個(gè)系統(tǒng)的運(yùn)行狀態(tài),為系統(tǒng)的安全運(yùn)行和性能優(yōu)化提供依據(jù)。
10.6 數(shù)據(jù)庫空間管理:數(shù)據(jù)量增加和碎片使性能降低;空間溢出會(huì)帶來災(zāi)難性停機(jī)故障。
包括:創(chuàng)建修改刪除數(shù)據(jù)庫空間、新建移動(dòng)關(guān)聯(lián)數(shù)據(jù)文件等。
10.7 數(shù)據(jù)庫參數(shù)調(diào)整:外部調(diào)整:CPU、網(wǎng)絡(luò);調(diào)整內(nèi)存分配(改善程度大);調(diào)整磁盤I/O(I/O時(shí)間是響應(yīng)時(shí)間的最大組成部分);調(diào)整競爭
10.8 數(shù)據(jù)庫查詢優(yōu)化:合理使用索引;避免或簡化排序(Order by、Group by,磁盤排序比內(nèi)存排序開銷大速度慢);避免相關(guān)子查詢、外連接(左右連接比內(nèi)連接消耗大);存儲(chǔ)過程
10.9 屬于Oracle 但不屬于SQL Server的邏輯和物理空間結(jié)構(gòu):表空間、段、區(qū)。
相關(guān)推薦:計(jì)算機(jī)等考三級(jí)數(shù)據(jù)庫模擬試題匯總北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |