小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

數(shù)據(jù)庫的鎖機(jī)制

 平民小白 2018-01-31

數(shù)據(jù)庫的讀現(xiàn)象淺析中介紹過,在并發(fā)訪問情況下,可能會出現(xiàn)臟讀、不可重復(fù)讀和幻讀等讀現(xiàn)象,為了應(yīng)對這些問題,主流數(shù)據(jù)庫都提供了鎖機(jī)制,并引入了事務(wù)隔離級別的概念。

并發(fā)控制

在計(jì)算機(jī)科學(xué),特別是程序設(shè)計(jì)、操作系統(tǒng)、多處理機(jī)和數(shù)據(jù)庫等領(lǐng)域,并發(fā)控制(Concurrency control)是確保及時(shí)糾正由并發(fā)操作導(dǎo)致的錯誤的一種機(jī)制。

數(shù)據(jù)庫管理系統(tǒng)(DBMS)中的并發(fā)控制的任務(wù)是確保在多個事務(wù)同時(shí)存取數(shù)據(jù)庫中同一數(shù)據(jù)時(shí)不破壞事務(wù)的隔離性和統(tǒng)一性以及數(shù)據(jù)庫的統(tǒng)一性。下面舉例說明并發(fā)操作帶來的數(shù)據(jù)不一致性問題:

現(xiàn)有兩處火車票售票點(diǎn),同時(shí)讀取某一趟列車車票數(shù)據(jù)庫中車票余額為 X。兩處售票點(diǎn)同時(shí)賣出一張車票,同時(shí)修改余額為 X -1寫回?cái)?shù)據(jù)庫,這樣就造成了實(shí)際賣出兩張火車票而數(shù)據(jù)庫中的記錄卻只少了一張。 產(chǎn)生這種情況的原因是因?yàn)閮蓚€事務(wù)讀入同一數(shù)據(jù)并同時(shí)修改,其中一個事務(wù)提交的結(jié)果破壞了另一個事務(wù)提交的結(jié)果,導(dǎo)致其數(shù)據(jù)的修改被丟失,破壞了事務(wù)的隔離性。并發(fā)控制要解決的就是這類問題。

封鎖、時(shí)間戳、樂觀并發(fā)控制(樂觀鎖)和悲觀并發(fā)控制(悲觀鎖)是并發(fā)控制主要采用的技術(shù)手段。

當(dāng)并發(fā)事務(wù)同時(shí)訪問一個資源時(shí),有可能導(dǎo)致數(shù)據(jù)不一致,因此需要一種機(jī)制來將數(shù)據(jù)訪問順序化,以保證數(shù)據(jù)庫數(shù)據(jù)的一致性。鎖就是其中的一種機(jī)制。

在計(jì)算機(jī)科學(xué)中,鎖是在執(zhí)行多線程時(shí)用于強(qiáng)行限制資源訪問的同步機(jī)制,即用于在并發(fā)控制中保證對互斥要求的滿足。

鎖的分類(oracle)

一、按操作劃分,可分為DML鎖DDL鎖

二、按鎖的粒度劃分,可分為表級鎖行級鎖、頁級鎖(mysql)

三、按鎖級別劃分,可分為共享鎖排他鎖

四、按加鎖方式劃分,可分為自動鎖、顯示鎖

五、按使用方式劃分,可分為樂觀鎖、悲觀鎖

DML鎖(data locks,數(shù)據(jù)鎖),用于保護(hù)數(shù)據(jù)的完整性,其中包括行級鎖(Row Locks (TX鎖))、表級鎖(table lock(TM鎖))。 DDL鎖(dictionary locks,數(shù)據(jù)字典鎖),用于保護(hù)數(shù)據(jù)庫對象的結(jié)構(gòu),如表、索引等的結(jié)構(gòu)定義。其中包排他DDL鎖(Exclusive DDL lock)、共享DDL鎖(Share DDL lock)、可中斷解析鎖(Breakable parse locks)

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多