溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎樣分析MySQL中鎖的相關(guān)問(wèn)題

發(fā)布時(shí)間:2021-12-27 18:08:57 來(lái)源:億速云 閱讀:116 作者:柒染 欄目:開(kāi)發(fā)技術(shù)

這篇文章給大家介紹怎樣分析MySQL中鎖的相關(guān)問(wèn)題,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

鎖分類:

從對(duì)數(shù)據(jù)操作的粒度分 :

表鎖:操作時(shí),會(huì)鎖定整個(gè)表。行鎖:操作時(shí),會(huì)鎖定當(dāng)前操作行。

從對(duì)數(shù)據(jù)操作的類型分:

讀鎖(共享鎖):針對(duì)同一份數(shù)據(jù),多個(gè)讀操作可以同時(shí)進(jìn)行而不會(huì)互相影響。寫(xiě)鎖(排它鎖):當(dāng)前操作沒(méi)有完成之前,它會(huì)阻斷其他客戶端的

怎樣分析MySQL中鎖的相關(guān)問(wèn)題


行表鎖特點(diǎn):

怎樣分析MySQL中鎖的相關(guān)問(wèn)題


MyISAM 表鎖:

如何加表鎖
MyISAM 在執(zhí)行查詢語(yǔ)句(SELECT)前,會(huì)自動(dòng)給涉及的所有表加讀鎖,在執(zhí)行更新操作(UPDATE、DELETE、
INSERT 等)前,會(huì)自動(dòng)給涉及的表加寫(xiě)鎖,這個(gè)過(guò)程并不需要用戶干預(yù),因此,用戶一般不需要直接用 LOCK
TABLE 命令給 MyISAM 表顯式加鎖。

怎樣分析MySQL中鎖的相關(guān)問(wèn)題

簡(jiǎn)而言之,就是讀鎖會(huì)阻塞寫(xiě),但是不會(huì)阻塞讀。而寫(xiě)鎖,則既會(huì)阻塞讀,又會(huì)阻塞寫(xiě)。

此外,MyISAM 的讀寫(xiě)鎖調(diào)度是寫(xiě)優(yōu)先,這也是MyISAM不適合做寫(xiě)為主的表的存儲(chǔ)引擎的原因。因?yàn)閷?xiě)鎖后,其
他線程不能做任何操作,大量的更新會(huì)使查詢很難得到鎖,從而造成永遠(yuǎn)阻塞。


InnoDB 行鎖

行鎖介紹
行鎖特點(diǎn) :偏向InnoDB 存儲(chǔ)引擎,開(kāi)銷大,加鎖慢;會(huì)出現(xiàn)死鎖;鎖定粒度最小,發(fā)生鎖沖突的概率最低,并發(fā)度
也最高。
InnoDB 與 MyISAM 的最大不同有三點(diǎn):一是支持事務(wù);二是 采用了行級(jí)鎖;支持外鍵。

事務(wù):
事務(wù)是由一組SQL語(yǔ)句組成的邏輯處理單元。

事務(wù)的四大特性(ACID):

怎樣分析MySQL中鎖的相關(guān)問(wèn)題
怎樣分析MySQL中鎖的相關(guān)問(wèn)題

怎樣分析MySQL中鎖的相關(guān)問(wèn)題

關(guān)于怎樣分析MySQL中鎖的相關(guān)問(wèn)題就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI