欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL中的共享鎖和排他鎖及加鎖方式

 更新時間:2025年03月03日 09:43:07   作者:WannaRunning  
文章介紹了MySQL中的共享鎖(SLock)和排他鎖(XLock)兩種類型,包括它們的定義、特點和加鎖方式,共享鎖允許多個事務(wù)同時讀取同一數(shù)據(jù)資源,而排他鎖則只允許一個事務(wù)修改或刪除某一行數(shù)據(jù),并且會阻塞其他事務(wù)對同一數(shù)據(jù)資源的訪問,感興趣的朋友一起看看吧

MySQL 中的鎖可以從多個維度進行分類,其中從模式上可以分為共享鎖(Shared Lock,S Lock)和 排他鎖(Exclusive Lock,X Lock)。

共享鎖(Shared Lock,S Lock)

共享鎖,也被稱為讀鎖(Read Lock),共享鎖保證了數(shù)據(jù)的共享讀特性。

  • 允許多個事務(wù)同時對同一數(shù)據(jù)資源進行讀取操作,即多個事務(wù)可以同時持有相同的共享鎖,并發(fā)讀取數(shù)據(jù)
  • 阻塞排他鎖,即如果一個事務(wù)已經(jīng)持有了共享鎖,其他事務(wù)如果要獲取排他鎖,則需要等待共享鎖釋放。其實就是不允許任何事務(wù)對數(shù)據(jù)進行修改(因為修改數(shù)據(jù)要先加排它鎖)

共享鎖的加鎖方式

SELECT ... LOCK IN SHARE MODE 
SELECT ... FOR SHARE(MySQL 8.0 及以上版本)

排他鎖(Exclusive Lock,X Lock)

  • 只能有一個事務(wù)持有排他鎖,其他事務(wù)無法獲取同樣的記錄上的排他鎖。即只允許一個事務(wù)修改或刪除某一行數(shù)據(jù)
  • 阻塞排他鎖和共享鎖,即如果一個事務(wù)已經(jīng)持有了排他鎖,其他事務(wù)無法獲取共享鎖或排他鎖,其實就是不允許其他事務(wù)對該行數(shù)據(jù)進行加鎖讀取或修改(注意只是不能加共享鎖或排他鎖讀取,但正常查詢是快照讀,這是可以的)

排它鎖的加鎖方式

SELECT ... FOR UPDATE
UPDATE語句
DELETE 語句

到此這篇關(guān)于MySQL中的共享鎖和排他鎖的文章就介紹到這了,更多相關(guān)mysql共享鎖和排他鎖內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mysql 中 replace into 與 insert into on duplicate key update 的用法和不同點實例分析

    mysql 中 replace into 與 insert into on duplicate key update 的

    這篇文章主要介紹了mysql 中 replace into 與 insert into on duplicate key update 的用法和不同點,結(jié)合實例形式分析了replace into 與 insert into on duplicate key update的功能、基本用法與操作注意事項,需要的朋友可以參考下
    2020-02-02
  • Windows7下安裝使用MySQL8.0.16修改密碼、連接Navicat問題

    Windows7下安裝使用MySQL8.0.16修改密碼、連接Navicat問題

    這篇文章主要介紹了Windows7下安裝使用MySQL8.0.16修改密碼、連接Navicat問題,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-06-06
  • mysql連接數(shù)設(shè)置操作方法(Too many connections)

    mysql連接數(shù)設(shè)置操作方法(Too many connections)

    下面小編就為大家?guī)硪黄猰ysql連接數(shù)設(shè)置操作方法(Too many connections)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • Mysql精粹系列(精粹)

    Mysql精粹系列(精粹)

    本文都是小編日常整理的mysql精粹內(nèi)容,需要大家熟練掌握并記憶的知識,非常不錯,具有參考借鑒價值,對mysql知識感興趣的朋友一起看看吧
    2016-09-09
  • 一文弄懂什么是MySQL的回表

    一文弄懂什么是MySQL的回表

    本文主要介紹了一文弄懂什么是MySQL的回表,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • mysql登錄遇到ERROR 1045問題解決方法

    mysql登錄遇到ERROR 1045問題解決方法

    mysql登錄時出現(xiàn)了錯誤:ERROR 1045: Access denied for user,究竟是什么原因呢?接下來為你詳細介紹下,感興趣的你可以參考下哈,或許可以幫助到你
    2013-03-03
  • Linux安裝MySQL教程(二進制分發(fā)版)

    Linux安裝MySQL教程(二進制分發(fā)版)

    這篇文章主要為大家詳細介紹了Linux安裝MySQL教程,二進制分發(fā)版,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • MySQL常用存儲引擎功能與用法詳解

    MySQL常用存儲引擎功能與用法詳解

    這篇文章主要介紹了MySQL常用存儲引擎功能與用法,較為詳細的分析了mysql存儲引擎的分類、功能、使用方法及相關(guān)操作注意事項,需要的朋友可以參考下
    2018-04-04
  • mysql使用報錯1142(42000)的問題及解決

    mysql使用報錯1142(42000)的問題及解決

    這篇文章主要介紹了mysql使用報錯1142(42000)的問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • MySQL查詢條件中放置on和where的區(qū)別分析

    MySQL查詢條件中放置on和where的區(qū)別分析

    這篇文章主要給大家介紹了關(guān)于MySQL查詢條件中放置on和where的區(qū)別,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01

最新評論