zoukankan      html  css  js  c++  java
  • mysql锁 锁定范围

    辅助索引除了对本身加锁外也会对聚合索引加锁

    一、等值辅助索引

    1、唯一辅助索引:

                 对辅助索引记录上加记录锁

                 对其对应的聚合索引加记录锁

    2、普通辅助索引:(一共有如下三种情况)

                 对SQL语句扫描过的辅助索引记录行加上next-key锁(注意也锁住记录行之后的间隙

                 对辅助索引对应的聚合索引加上索引记录锁

                 当辅助索引为间隙锁“最小”和“最大”值时,对聚合索引相应的行加间隙锁。“最小”锁定对应聚合索引之后的行间隙。“最大”值锁定对应聚合索引之前的行间隙。

    二、范围:

    1、唯一辅助索引:

                 对于扫描的辅助索引记录的锁定范围就是多个索引记录next-key范围的叠加组合。

                 对于聚合索引(主键)的锁定范围,会对多个辅助索引对应的聚合索引列加索引记录锁(不存在的记录不加锁)。

    2、普通辅助索引:

                辅助索引锁定范围为此语句扫描索引记录锁定范围的叠加组合。

               当辅助索引为间隙锁“最小”和“最大”值时,对聚合索引相应的行加间隙锁。“最小”锁定对应聚合索引之后的行间隙。“最大”值锁定对应聚合索引之前的行间隙。

    如果是聚合索引,只会在聚合索引上加锁,并且加锁行为和唯一索引的行为一样。

    间隙锁只会阻止insert操作

    参考文章:https://segmentfault.com/a/1190000013307132

          

    心有多大,天有多高,一起奋斗!!
  • 相关阅读:
    NUMBER BASE CONVERSION(进制转换)
    2776 寻找代表元(匈牙利算法)
    最长严格上子序列(二分优化)
    c++ bitset类的使用和简介
    笨小猴 2008年NOIP全国联赛提高组
    三国游戏 2010年NOIP全国联赛普及组
    全国信息学奥林匹克联赛(NOIP2014)复赛 模拟题Day2 长乐一中
    codevs 1704 卡片游戏
    热浪
    全国信息学奥林匹克联赛 ( NOIP2014) 复赛 模拟题 Day1 长乐一中
  • 原文地址:https://www.cnblogs.com/zhaolei1996/p/14915926.html
Copyright © 2011-2022 走看看