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

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

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 自行維護的一種協調事務加鎖的機制。它在事務創建行鎖和表鎖時創建,在事務提交或回滾之后自動釋放。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 含羞草传媒一天免费看下 | 国产永久一区二区三区 | videos护士有奶水 | 欧美精品v日韩精品v国产精品 | 乳环调教| 91在线亚洲综合在线 | 精品久久久久久亚洲 | 色妞女女女女女bbbb | 特级老女人淫片高清视频 | 国产精品九九热 | 美女靠逼的视频 | china中国xxxxfree| 免费在线观看日本 | 黑人又大又硬又粗再深一点 | 天天欲色成人综合网站 | 国产极品久久 | 国产欧美久久久精品影院 | 欧美一级裸片 | bestialitysex杂交 bedfriend泰剧全集免费观看 | 69萝莉| 女暴露狂校园裸露小说 | 亚洲精品无码不卡 | 亚洲国产在线午夜视频无 | 国产男女性特黄录像 | 美女任你模 | 九九精品视频一区二区三区 | 四虎精品视频在线永久免费观看 | 动漫美女被羞羞产奶 | 苍井空色欲迷墙 | 成人免费在线视频 | 视频亚洲一区 | 9191视频| 免费国产成人α片 | 久久精品国产亚洲AV麻豆欧美玲 | 亚洲国产AV一区二区三区四区 | 久久99r66热这里只有精品 | 精品欧美一区二区在线观看欧美熟 | 男人猛进猛出女人下面视频 | 亚洲天堂男人天堂 | 国产一级毛片国语版 | 精品国产一级毛片大全 |