一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - Mysql - 什么是意向鎖?它和意向書有什么區別?

什么是意向鎖?它和意向書有什么區別?

2023-12-29 01:00未知服務器之家 Mysql

最近受廢話文學的影響,所以有了今天的這個標題,希望大家能喜歡。大家不喜歡也沒關系,反正我喜歡。 魯迅先生曾經說過“我家門前有兩棵樹,一棵是棗樹,另一棵還是棗樹。”,由此可見,這老爺子算是把廢話文學給玩明白

最近受廢話文學的影響,所以有了今天的這個標題,希望大家能喜歡。大家不喜歡也沒關系,反正我喜歡。

魯迅先生曾經說過“我家門前有兩棵樹,一棵是棗樹,另一棵還是棗樹。”,由此可見,這老爺子算是把廢話文學給玩明白了。

希望大家也能,聽君一席話,如聽一席話。

聊正題

聊完閑篇,咱們說回正題:什么是意向鎖?為什么需要意向鎖?

PS:這里沒意向書什么事啊,標題中有,純粹是為了好玩。它們不能說沒什么關系,那是一點關系都沒有啊。

定義

意向鎖(Intention Locks)是 MySQL InnoDB 引擎中的一種鎖機制(表級鎖),用于協調事務間的加鎖操作,以避免沖突和死鎖的發生。

為什么要有意向鎖?

例如,事務 A 加鎖了 Users 表中的一行數據(行鎖),而事務 B 要對整個 Users 表進行加鎖(表鎖),那么這個時候,如果沒有意向鎖,那事務 B 就會加鎖成功了。而事務 B 如果加鎖成功的話,那么它是可以對表中的任意數據行進行操作的,包括事務 A 加鎖的那行數據,所以,這個時候就發生了鎖沖突。

為了避免這個問題,所以 MySQL 引入了意向鎖,在事務 A 添加行鎖的時候,先添加意向鎖,而事務 B 在添加表鎖的時候,先判斷一下意向鎖,如果有意向鎖了,它就不能加表鎖了,這樣避免了鎖沖突,提升了加鎖判斷的效率。

想想一下,如果沒有意向鎖的話,那么事務 B 在加表鎖的時候,只能一行行的判斷有沒有行鎖,而這種判斷的效率是非常低的,尤其數據量比較大時。

意向鎖分類

意向鎖分為以下兩種類型:

意向共享鎖(Intention Shared lock,IS):表示在某個資源上設置共享鎖。也就是讀鎖,用于讀取數據的操作,允許多個事務同時持有(共享鎖),不互斥。

意向排他鎖(Intention Exclusive lock,IX):表示在某個資源上設置排他鎖。也就是寫鎖,用于修改和更新數據操作,并且同一時間只能由一個事務持有,不能和其他事務共同持有,具有互斥性和排他性。

小結

意向鎖并不能直接由開發者創建和使用,它是存在于 MySQL 中,由 MySQL 自行維護的一種協調事務加鎖的機制。它在事務創建行鎖和表鎖時創建,在事務提交或回滾之后自動釋放。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 白白国产永久免费视频 | tube62hdxxxx日本 | 国产精品第 | 手机看片日韩1024你懂的首页 | 好大好粗好舒服 | 潘金莲西门庆一级淫片aaaaaa | 亚洲精品国产一区二区在线 | 我和黑色丝袜班主任 | 精品久久久久久午夜 | 亚洲 欧美 国产 综合 播放 | aⅴ导航站| 秋霞在线一级 | 亚洲国产精品成人久久 | 欧美成a人片免费看久久 | 国产精品视频第一区二区 | 国产精品综合在线 | 日韩欧美亚洲天堂 | 丝瓜视频在线观看污 | 能播放的欧美同性videos | 九草在线视频 | 欧美日韩精品在线视频 | 大东北chinesexxxx露脸 | 亚洲羞羞裸色私人影院 | 免费观看欧美成人禁片 | 香蕉91视频 | t66y地址一地址二地址三 | 欧美日韩一本 | 女人是男人的未来1分49分 | 婷婷九月 | 天天综合五月天 | 国产在线观看91精品一区 | 亚洲成人一区 | 性鸥美 | 四虎影视在线看免费 720p | 久久久久久久久人体 | 免费91麻豆精品国产自产在线观看 | 色婷婷婷婷 | 婷婷99视频精品全部在线观看 | 国产欧美日韩精品一区二 | 欧美18一19性高清hd4k | 女人肮脏的交易中文字幕未删减版 |