码迷,mamicode.com
首页 > 数据库 > 详细

手动验证MySQL Innodb RR级别加锁 需要注意的几个点

时间:2021-01-12 11:15:53      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:注意   表行数   级别   next   执行   rev   加锁   dex   upd   

记录几个坑

  • 优化器在表行数比较少的时候 会使用全表扫描,会造成全表所有的行加锁,所以需要使用force index 强制使用索引 来实现gap-lock(间隙锁)的应用

  • next-lock 加锁 会锁住 第一个不满足条件行

  • 例如下表 number有唯一索引

id name number
1 Jack 1
2 Mike 2
3 Jon 3
4 Trevor 4

执行

update set name = ‘Franklin‘ where number < 2;

实际上 id=3 的行也会被锁住

手动验证MySQL Innodb RR级别加锁 需要注意的几个点

标签:注意   表行数   级别   next   执行   rev   加锁   dex   upd   

原文地址:https://www.cnblogs.com/jon-winters/p/14258612.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!