最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql之innodb的鎖分類介紹

 更新時(shí)間:2012年11月20日 15:51:11   作者:  
本文將介紹mysql之innodb的鎖分類,需要了解更多的朋友可以參考下
一、innodb行鎖分類

record lock:記錄鎖,也就是僅僅鎖著單獨(dú)的一行
gap lock:區(qū)間鎖,僅僅鎖住一個(gè)區(qū)間(注意這里的區(qū)間都是開區(qū)間,也就是不包括邊界值。
next-key lock:record lock+gap lock,所以next-key lock也就半開半閉區(qū)間,且是下界開,上界閉。 m.fzitv.net
next-key 鎖定范圍:(負(fù)無窮大,最小第一記錄],(記錄之間],(最大記錄,正無窮大)

二、語句鎖定情況分析

SELECT ... FROM ... FOR UPDATE對讀遇到的所有索引記錄設(shè)置獨(dú)占的next-key鎖定。
INSERT INTO ... VALUES (...)對被插入的行設(shè)置獨(dú)占鎖定。注意,這不是一個(gè)next-key鎖定,并且不阻止其它用戶在已插入行之前的間隙插入。如果發(fā)生重復(fù)鍵錯(cuò)誤,對重復(fù)的索引記錄設(shè)置共享鎖定。
· 在一個(gè)表上初始化之前指定的AUTO_INCREMENT列之時(shí),InnoDB在與AUTO_INCREMENT列相關(guān)聯(lián)的索引的末尾設(shè)置獨(dú)占鎖定。在訪問自動(dòng)增長計(jì)數(shù)器中,InnoDB使用專用的表鎖定模式AUTO-INC,其中鎖定僅持續(xù)到當(dāng)前SQL語句的結(jié)束,而不是到整個(gè)事務(wù)的結(jié)束。InnoDB取回先前初始化的AUTO_INCREMENT列的值而不設(shè)定任何鎖定。

INSERT INTO T SELECT ... FROM S WHERE ... 對每個(gè)插入到T的行設(shè)置獨(dú)占(非next-key)鎖定。它在S上把搜索當(dāng)作一個(gè)持續(xù)讀,但是如果MySQL二進(jìn)制日志功能被打開,它就對S設(shè)置一個(gè)共享的next-key鎖
定。InnoDB在后一種情況不得不設(shè)置鎖定:在從一個(gè)備份的前滾恢復(fù)中,每個(gè)SQL語句不得不以與它最初被執(zhí)行的方式完全同樣的方式執(zhí)行。

· CREATE TABLE ... SELECT ... 把SELECT當(dāng)作一個(gè)持續(xù)讀來執(zhí)行,或者帶著共享鎖定來執(zhí)行,如前面的條目所述。
· 如果唯一鍵沒有沖突,REPLACE象一個(gè)插入一樣被做。另外,對必須更新的行設(shè)置一個(gè)獨(dú)占的nextkey鎖定。
· UPDATE ... WHERE ... 對搜索遇到的每個(gè)記錄設(shè)置一個(gè)獨(dú)占的next-key鎖定。
· DELETE FROM ... WHERE ... 對搜索遇到的每個(gè)記錄設(shè)置一個(gè)獨(dú)占的next-key鎖定。
· 如果對一個(gè)表定義FOREIGN KEY約束,任何需要檢查約束條件的插入,更新或刪除對它看著檢查約束的記錄設(shè)置共享行級鎖定。InnoDB在約束失敗的情況下也設(shè)置這些鎖定。

相關(guān)文章

  • 在IDEA的maven項(xiàng)目中連接并使用MySQL8.0的方法教程

    在IDEA的maven項(xiàng)目中連接并使用MySQL8.0的方法教程

    這篇文章主要介紹了如何在IDEA的maven項(xiàng)目中連接并使用MySQL8.0,本文分步驟給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Mysql入門基礎(chǔ) 數(shù)據(jù)庫創(chuàng)建篇

    Mysql入門基礎(chǔ) 數(shù)據(jù)庫創(chuàng)建篇

    Mysql入門基礎(chǔ) 數(shù)據(jù)庫創(chuàng)建篇,剛接觸php與mysql的朋友可以參考下。多寫多測試。
    2010-04-04
  • MySQL配置文件my.cnf與my.ini的區(qū)別

    MySQL配置文件my.cnf與my.ini的區(qū)別

    在使用MySQL時(shí),我們需要對其進(jìn)行配置,以滿足我們的需求,本文主要介紹了MySQL配置文件my.cnf與my.ini的區(qū)別,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • mysql使用from與join兩表查詢的區(qū)別總結(jié)

    mysql使用from與join兩表查詢的區(qū)別總結(jié)

    這篇文章主要給大家介紹了關(guān)于mysql使用from與join兩表查詢的區(qū)別的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • Mysql表連接的誤區(qū)與原理詳析

    Mysql表連接的誤區(qū)與原理詳析

    在使用MySQL數(shù)據(jù)庫過程中,left?join?基本是必用的語法,下面這篇文章主要給大家介紹了關(guān)于Mysql表連接的誤區(qū)與原理的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • MySQL 搭建雙主復(fù)制服務(wù)并通過 HAProxy 負(fù)載均衡的過程詳解

    MySQL 搭建雙主復(fù)制服務(wù)并通過 HAProxy 負(fù)載均衡的過程詳解

    在數(shù)據(jù)庫管理中,數(shù)據(jù)的備份和同步是至關(guān)重要的環(huán)節(jié),而雙主復(fù)制(Dual Master Replication)作為一種高可用性和數(shù)據(jù)同步的解決方案,本文將介紹MySQL雙主復(fù)制的配置過程并通過 HAProxy 負(fù)載均衡,感興趣的朋友一起看看吧
    2024-03-03
  • MySQL 客戶端不輸入用戶名和密碼直接連接數(shù)據(jù)庫的2個(gè)方法

    MySQL 客戶端不輸入用戶名和密碼直接連接數(shù)據(jù)庫的2個(gè)方法

    MySQL 客戶端不輸入用戶名和密碼直接連接數(shù)據(jù)庫的2個(gè)方法,大家可以測試下。
    2009-07-07
  • MySQL數(shù)據(jù)庫JDBC編程詳解流程

    MySQL數(shù)據(jù)庫JDBC編程詳解流程

    JDBC是指Java數(shù)據(jù)庫連接,是一種標(biāo)準(zhǔn)Java應(yīng)用編程接口(?JAVA?API),用來連接?Java?編程語言和廣泛的數(shù)據(jù)庫。從根本上來說,JDBC?是一種規(guī)范,它提供了一套完整的接口,允許便攜式訪問到底層數(shù)據(jù)庫,本篇文章我們來了解MySQL連接JDBC的流程方法
    2022-01-01
  • 用HAProxy來檢測MySQL復(fù)制的延遲的教程

    用HAProxy來檢測MySQL復(fù)制的延遲的教程

    這篇文章主要介紹了用HAProxy來檢測MySQL復(fù)制的延遲的教程,HAProxy需要使用到PHP腳本,需要的朋友可以參考下
    2015-04-04
  • mysql中的limit和offset用法詳解

    mysql中的limit和offset用法詳解

    這篇文章主要介紹了mysql中的limit和offset用法詳解,limit一般被用來排序,offset一般和limit組合使用,本文對這兩個(gè)函數(shù)進(jìn)行詳細(xì)介紹,需要的朋友可以參考下
    2023-10-10

最新評論

望谟县| 福海县| 清丰县| 寻甸| 寿光市| 日喀则市| 梁平县| 志丹县| 屏边| 绿春县| 灵寿县| 集贤县| 天镇县| 巩留县| 平塘县| 黄冈市| 恩施市| 阿拉善左旗| 正定县| 安塞县| 商南县| 穆棱市| 轮台县| 西华县| 交城县| 康马县| 博爱县| 琼结县| 宝山区| 吴忠市| 高安市| 兴海县| 宁都县| 洛川县| 萝北县| 洞口县| 新源县| 视频| 龙川县| 竹北市| 喀喇沁旗|