多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 互聯網 > MySQL 溫故而知新--Innodb存儲引擎中的鎖

MySQL 溫故而知新--Innodb存儲引擎中的鎖

來源:程序員人生   發布時間:2014-11-09 10:39:08 閱讀次數:3586次

最近碰到很多鎖問題,所以解決了后,仔細再去瀏覽了關于鎖的書籍,整理以下:

1
,鎖的種類

Innodb存儲引擎實現了以下2種標準的行級鎖:

?  同享鎖(S lock),允許事務讀取1行數據。

?  排它鎖(X lock),允許事務刪除或更新1行數據。

 

當1個事務獲得了行r的同享鎖,那末另外1個事務也能夠立即獲得行r的同享鎖,由于讀取并未改變行r的數據,這類情況就是鎖兼容。但是如果有事務想取得行r的排它鎖,則它必須等待事務釋放行r上的同享鎖這類情況就是鎖不兼容,2者兼容性以下表格所示:

排它鎖和同享鎖的兼容性

 

排它鎖

同享鎖

排它鎖

沖突

沖突

同享鎖

沖突

兼容

 

2,鎖的擴大

Innodb存儲引擎支持多粒度鎖定,這類鎖定允許在行級別上的鎖和表級別上的鎖同時存在。為了支持在不同粒度上進行加鎖操作,InnoDB存儲引擎支持1種額外的鎖方式,就是意向鎖。意向鎖是表級別的鎖,其設計目的主要是為了在1個事務中揭露下1即將被要求的鎖的類型。它也分為兩種:

?  意向同享鎖(IS Lock),事務想要取得1個表中某幾行的同享鎖。

?  意向排它鎖(IX Lock),事務想要取得1個表中某幾行的排它鎖。

 

由于InnoDB支持的是行級別鎖,所以意向鎖其實不大會阻塞除全表scan以下的任何要求。同享鎖、排它鎖、意向同享鎖、意向排它鎖相互之前都是有兼容/互斥關系的,可以用1個兼容性矩陣表示(y表示兼容,n表示不兼容),以下所示:

 

排它鎖

同享鎖

IX 意向排它鎖

IS 意向同享鎖

排它鎖

沖突

沖突

沖突

沖突

同享鎖

沖突

兼容

沖突

兼容

IX 意向排它鎖

沖突

沖突

兼容

兼容

IS 意向同享鎖

沖突

兼容

兼容

兼容

         解析:XS的相互兼容關系step1描寫過了,IXIS的相互關系全部是兼容,這也很好理解,由于它們都只是“成心”,還處于YY階段,沒有真干,所以是可以兼容的;

剩下的就是XIXXIS, SIX SIS的關系了,我們可以由XS的關系推導出這4組關系。

簡單的說:XIX=XX的關系。為何呢?由于事務在獲得IX鎖后,接下來就有權利獲得X鎖。如果XIX兼容的話,就會出現兩個事務都獲得了X鎖的情況,這與我們已知的XX互斥是矛盾的,所以XIX只能是互斥關系。其余的3組關系同理,可用一樣的方式推導出來。

 

 

3,摹擬鎖場景

InnoDB Plugin之前,我們只能通過SHOW FULL PROCESSLISSHOW ENGINE INNODB STATUS來查看當前的http://www.vxbq.cn/db/要求,然后再判斷事務中鎖的情況。新版本的InnoDB Plugin中,在information_schema庫中添加了3張表,INNODB_LOCKSINNODB_TRXINNODB_LOCK_WAITS。通過這3個表,可以更簡單的監控當前的事務并且分析可能存在的鎖問題。如果http://www.vxbq.cn/db/正常運行,這3個表都是空的,沒有任何記錄。

3.1,開啟事務t1t2,摹擬鎖

開啟2session窗口,并且開啟2個事務t1t2

在第1個窗口開啟事務t1履行1個鎖定操作,以下t1事務窗口界面:

mysql> set autocommit =0;

Query OK, 0 rows affected (0.00 sec)

mysql> begin;

Query OK, 0 rows affected (0.00 sec)

  開始履行鎖定操作

mysql> select * from test.t1 where a<5 for update;

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生

------分隔線----------------------------
分享到:
------分隔線----------------------------
為碼而活
積分:4237
15粉絲
7關注
欄目熱點
關閉
程序員人生
主站蜘蛛池模板: 日韩一级一片 | 666精品国产精品亚洲 | 亚洲第一免费视频 | 影视先锋av资源噜噜 | 五月天免费在线视频 | 久久亚洲精品中文字幕三区 | 欧美videos在线观看 | 一级做a爰性视频 | 久久精品久久精品久久精品 | 99久久精品毛片免费播放 | 欧美三级欧美做a爱 | 中国国产一级毛片 | 中文字幕7 | 欧美一区二区aa大片 | 另类专区亚洲 | 一级毛片女人18水真多 | 一级爱爱 | 亚洲高清免费 | 免费在线视频观看 | 欧美性视频在线 | 欧美综合自拍亚洲综合 | 欧美成人性videos | 国产成人精品日本亚洲语音1 | 亚洲欧美人成人综合在线50p | 欧美激情观看一区二区久久 | 精品久久久久久中文字幕专区 | 免费一级欧美片片线观看 | 性福利视频 | 性色成人网 | 日本japan色系videos护士 日本jizz在线播放 | 中文字幕视频免费在线观看 | 日韩中文字幕高清在线专区 | 日本wwww视频 | 黄色网址中文字幕 | www.天堂在线观看 | 欧美专区日韩 | h肉在线 | 一本中文字幕一区 | 91精品国产高清91久久久久久 | 不卡一级aaa全黄毛片 | www亚洲一区 |