位置: 编程技术 - 正文

MySQL语句加锁的实现分析(mysql 加锁处理分析)

编辑:rootadmin

推荐整理分享MySQL语句加锁的实现分析(mysql 加锁处理分析),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql加锁规则,mysql 加锁处理分析,mysql锁怎么用,mysql加表锁语句,mysql加表锁语句,mysql 加锁处理分析,mysql 加锁处理分析,mysql加锁语法,内容如对您有帮助,希望把文章链接给更多的朋友!

摘要: MySQL两条SQL语句锁的分析

看一下下面的SQL语句加什么锁

(1)id 是不是主键

(2)当前系统的隔离级别是什么

(3)id列如果不是主键,那么id列上有索引吗

(4)id列上如果有二级索引,那么这个索引是二级索引吗

(5)两个SQL的执行计划是什么?索引扫描还是全表扫描

实际的执行计划需要根据MySQL的输出为准

组合一:id列是主键,RC隔离级别组合二:id列是二级唯一索引,RC隔离级别组合三:id列是二级非唯一索引,RC隔离级别组合四:id列没有索引,RC隔离级别组合五:id列是主键,RR隔离级别组合六:id列是二级唯一索引,RR隔离级别组合七:id列是二级非唯一索引,RR隔离级别组合八:id列上没有索引,RR隔离级别

Serializable隔离级别

在RR RC隔离级别下,SQL1:select 均不加锁,采用的是快照读;以下仅讨论SQL2:delete操作的加锁Percona

组合一:id主键+RCPercona

MySQL

组合二:id唯一索引+RC在唯一索引上的更新需要两个X锁,一个对应唯一索引id= 记录,一个对应于聚簇索引name='d'的记录Percona

MySQL语句加锁的实现分析(mysql 加锁处理分析)

MySQL

组合三:id非唯一索引+RCID列为普通索引,那么对应的所有满足SQL查询条件的记录,都会被加锁;同时,这些记录在主键索引上的记录,也会被加锁Percona

MySQL

组合四:id无索引+RCPercona

MySQL

组合五:id主键+RR参考 组合一

组合六:id唯一索引+RR参考 组合二

组合七:id非唯一索引+RRPercona

MySQL

组合八:id无索引+RRPercona

MySQL

组合九:Serializable

针对前面提到的简单的SQL,最后一个情况:Serializable隔离级别。对于SQL2:delete from t1 where id = ; 来说,Serializable隔离级别与Repeatable Read隔离级别完全一致,因此不做介绍。

Serializable隔离级别,影响的是SQL1:select * from t1 where id = ; 这条SQL,在RC,RR隔离级别下,都是快照读,不加锁。但是在Serializable隔离级别,SQL1会加读锁,也就是说快照读不复存在,MVCC并发控制降级为Lock-Based CC。

结论:在MySQL/InnoDB中,所谓的读不加锁,并不适用于所有的情况,而是隔离级别相关的。Serializable隔离级别,读不加锁就不再成立,所有的读操作,都是当前读。

详解mysql中的冗余和重复索引 mysql允许在相同列上创建多个索引,无论是有意还是无意,mysql需要单独维护重复的索引,并且优化器在优化查询的时候也需要逐个地进行考虑,这会影

Mysql中explain作用详解 一、MYSQL的索引索引(Index):帮助Mysql高效获取数据的一种数据结构。用于提高查找效率,可以比作字典。可以简单理解为排好序的快速查找的数据结构

MySQL中or语句用法示例 1.mysql中or语法的使用,在mysql语法中or使用注意点。项目遇到坑,遍历发放奖励数据查询错误!!!$sql='SELECT*FROM`vvt_spread_doubleegg_exchange_award`ASpWHEREp.`act_t

标签: mysql 加锁处理分析

本文链接地址:https://www.jiuchutong.com/biancheng/348296.html 转载请保留说明!

上一篇:mysql 启动1067错误及修改字符集重启之后复原无效问题(mysql启动时报1067)

下一篇:详解mysql中的冗余和重复索引(mysql冗余字段)

  • 收入能加在库存上吗
  • 财务软件续费怎么记账
  • 财政拨款收入和财政补助收入的区别
  • 土地增值税清算规程实施细则
  • 饭店的现金日记账填写样本
  • 退增值税政策
  • 购物返现活动文案
  • 股权转让需要缴纳企业所得税吗
  • 不按出资比例取得分红怎么纳税?
  • 营改增后销售租赁后的设备如何做税务处理?
  • 发票没认证可以作废吗?
  • 安全费用支出范围包括
  • 用友u8怎样查询上个月凭证
  • 母公司占股子公司多少
  • 哪些公司可以开咨询费发票
  • 小规模纳税人附表一怎么填
  • 发票请求流水号不能为空
  • 减值准备可以转回是什么意思
  • 增值税小规模纳税人适用3%征收率
  • 企业注销后资金处理
  • 固定资产实物归哪个部门管理
  • 房地产企业预收款什么时候确认收入
  • 小规模增值税报表模板
  • 一次性工伤补偿金公司不给怎么办
  • 公司有好多没有股份的人
  • 在windows7的
  • 联想怎么进入bios设置u盘启动
  • 国际重复征税的类型及范围
  • mac如何改变照片图库
  • PHP:Memcached::incrementByKey()的用法_Memcached类
  • dotnetfx.exe
  • php的运算符主要包括哪些?
  • 如何做好记账会计
  • 非货币性资产交换以公允价值为基础进行计量
  • vue url 参数
  • 受赠与获赠的区别
  • vue路由跳转原理
  • php的!
  • 印花税不足一元需要缴纳吗
  • 百度文心一言对未来商业的影响
  • 创造未来这首歌是谁
  • 收款收据可以盖业务章吗
  • 免税农产品的范围有哪些
  • Python数学建模三剑客
  • mysql 死锁处理
  • mongotemplate 分页查询
  • 长期资产的减值会影响CFO吗
  • 会计常用分录
  • 伙食堂是什么意思
  • 餐费开增值税专用发票
  • 公司预支款应注意什么
  • 新契税法商业
  • 电子增值税发票样本
  • 关于利润分配科目的表述正确的有
  • 出口退税备案完事了,为什么还没有退税勾选那个模块
  • 核定征收每月最低交多少税
  • 忘记报关可以补报吗
  • 成本核算方法有哪几种
  • 利润表怎么没有本月数
  • 预提费用怎么做凭证
  • sqlserver关键字附近有语法错误
  • mysql 复制表结构并把满足条件的数据添加到新表
  • Linux(Ubuntu)下Mysql5.6.28安装配置方法图文教程
  • linux系统坏了怎么恢复数据
  • 激活 win7
  • win8系统如何恢复出厂设置
  • 照片墙安装教程
  • shell 记录日志
  • Android屏幕适配分屏
  • 浅谈一下新冠的好处
  • JS backgroundImage控制
  • 数字图像处理软件idl和matlab有什么异同点
  • NGUI学习:(1)spine导入后图层顺序的问题
  • Python3的urllib.parse常用函数小结(urlencode,quote,quote_plus,unquote,unquote_plus等)
  • 安卓 centos
  • 单据整理方法
  • 珠海选调生2021公告
  • 河北地税局电话号码
  • 贵州地税电话
  • 车辆保险代收车船税会计分录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设