大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 詳解MySQL行鎖

詳解MySQL行鎖

更新時間:2021-01-26 17:49:34 來源:動力節(jié)點 瀏覽1121次

鎖是計算機協(xié)調(diào)多個進程或線程并發(fā)訪問某一資源的機制。鎖保證數(shù)據(jù)并發(fā)訪問的一致性、有效性;鎖沖突也是影響數(shù)據(jù)庫并發(fā)訪問性能的一個重要因素。鎖是Mysql在服務(wù)器層和存儲引擎層的的并發(fā)控制。MySQL中從對數(shù)據(jù)操作的粒度分為表鎖和行鎖。表鎖是指對一整張表加鎖,一般是 DDL 處理時使用;而行鎖則是鎖定某一行或者某幾行,或者行與行之間的間隙。本文我們就重點來介紹MySQL行鎖

 

行鎖不同存儲引擎的行鎖實現(xiàn)不同,后續(xù)沒有特別說明,則行鎖特指 InnoDB 實現(xiàn)的行鎖。在了解 InnoDB 的加鎖原理前,需要對其存儲結(jié)構(gòu)有一定的了解。InnoDB 是聚簇索引,也就是 B+樹的葉節(jié)點既存儲了主鍵索引也存儲了數(shù)據(jù)行。而 InnoDB 的二級索引的葉節(jié)點存儲的則是主鍵值,所以通過二級索引查詢數(shù)據(jù)時,還需要拿對應(yīng)的主鍵去聚簇索引中再次進行查詢。

 

行鎖的模式有:讀意向鎖,寫意向鎖,讀鎖,寫鎖和自增鎖(auto_inc),下面我們依次來看。

1.讀寫鎖

讀鎖,又稱共享鎖(Share locks,簡稱 S 鎖),加了讀鎖的記錄,所有的事務(wù)都可以讀取,但是不能修改,并且可同時有多個事務(wù)對記錄加讀鎖。

寫鎖,又稱排他鎖(Exclusive locks,簡稱 X 鎖),或獨占鎖,對記錄加了排他鎖之后,只有擁有該鎖的事務(wù)可以讀取和修改,其他事務(wù)都不可以讀取和修改,并且同一時間只能有一個事務(wù)加寫鎖。

 

2.讀寫意向鎖

由于表鎖和行鎖雖然鎖定范圍不同,但是會相互沖突。所以當(dāng)你要加表鎖時,勢必要先遍歷該表的所有記錄,判斷是否加有排他鎖。這種遍歷檢查的方式顯然是一種低效的方式,MySQL 引入了意向鎖,來檢測表鎖和行鎖的沖突。意向鎖也是表級鎖,也可分為讀意向鎖(IS 鎖)和寫意向鎖(IX 鎖)。當(dāng)事務(wù)要在記錄上加上讀鎖或?qū)戞i時,要首先在表上加上意向鎖。這樣判斷表中是否有記錄加鎖就很簡單了,只要看下表上是否有意向鎖就行了。意向鎖之間是不會產(chǎn)生沖突的,也不和 AUTO_INC 表鎖沖突,它只會阻塞表級讀鎖或表級寫鎖,另外,意向鎖也不會和行鎖沖突,行鎖只會和行鎖沖突。

 

3.自增鎖

AUTOINC 鎖又叫自增鎖(一般簡寫成 AI 鎖),是一種表鎖,當(dāng)表中有自增列(AUTOINCREMENT)時出現(xiàn)。當(dāng)插入表中有自增列時,數(shù)據(jù)庫需要自動生成自增值,它會先為該表加 AUTOINC 表鎖,阻塞其他事務(wù)的插入操作,這樣保證生成的自增值肯定是唯一的。AUTOINC 鎖具有如下特點:

1)AUTO_INC 鎖互不兼容,也就是說同一張表同時只允許有一個自增鎖;

2)自增值一旦分配了就會 +1,如果事務(wù)回滾,自增值也不會減回去,所以自增值可能會出現(xiàn)中斷的情況。

 

顯然,AUTOINC 表鎖會導(dǎo)致并發(fā)插入的效率降低,為了提高插入的并發(fā)性,MySQL 從 5.1.22 版本開始,引入了一種可選的輕量級鎖(mutex)機制來代替 AUTOINC 鎖,可以通過參數(shù) innodbautoinclockmode 來靈活控制分配自增值時的并發(fā)策略。

 

行鎖是MySQL數(shù)據(jù)庫中非常重要的鎖,行鎖根據(jù)場景的不同又可以進一步細分,依次為 Next-Key Lock,Gap Lock 間隙鎖,Record Lock 記錄鎖和插入意向 GAP 鎖。不同的鎖鎖定的位置是不同的,比如說記錄鎖只鎖住對應(yīng)的記錄,而間隙鎖鎖住記錄和記錄之間的間隔,Next-Key Lock 則所屬記錄和記錄之前的間隙。想要了解這些行鎖的詳細信息,可以查看本站的MySQL教程,帶你全面解析MySQL行鎖。

 

提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 免费视频爱爱 | 中国特级黄一级真人毛片 | 国产999在线 | 亚洲毛片免费看 | 激情欧美一区二区三区中文字幕 | 免费在线黄色网 | 麻豆一区二区 | 思思久久99热这里只有精品66 | 亚洲免费精品视频 | 亚洲午夜综合网 | 50-60岁老妇女一级毛片 | 亚洲精品福利一区二区三区 | xxx色视频| 欧美精品久久久久久久小说 | 日本不卡毛片一二三四 | 国产成人一级片 | 欧美精品一区二区三区视频 | 欧美日韩高清在线观看一区二区 | 超碰人人操 | 久久国产影视免费精品 | 久久www免费人成高清 | 欧美网站黄 | 成人午夜爽爽爽免费视频 | 九九九精品午夜在线观看 | 黄色网址中文字幕 | 亚洲国产系列久久精品99人人 | 成人免费一级片 | 日韩欧美国产高清在线观看 | 尹人综合| 久久大综合 | 天天射天天舔 | 精品一区二区三区免费毛片爱 | 幸福宝色多多 | 免费高清a毛片 | 老司机午夜免费福利 | 美国毛片一级e片黑人片 | 一极毛片 | 国产探花视频在线观看 | 爱做久久久久久久久久 | 亚洲一区免费在线观看 | 在线观看亚洲精品专区 |