- 表锁: 开销小 , 加锁快;锁定力度大 , 发生锁冲突概率高 , 并发度最低;不会出现死锁 。
- 行锁: 开销大 , 加锁慢;会出现死锁;锁定粒度小 , 发生锁冲突的概率低 , 并发度高 。
- 页锁: 开销和加锁速度介于表锁和行锁之间;会出现死锁;锁定粒度介于表锁和行锁之间 , 并发度一般
共享锁:
- 又称读锁(S锁) 。
- 一个事务获取了共享锁 , 其他事务可以获取共享锁 , 不能获取排他锁 , 其他事务可以进行读操作 , 不能进行写操作 。
- SELECT ... LOCK IN SHARE MODE 显示加共享锁 。
- 又称写锁(X锁) 。
- 如果事务T对数据A加上排他锁后 , 则其他事务不能再对A加任任何类型的封锁 。获准排他锁的事务既能读数据 , 又能修改数据 。
- SELECT ... FOR UPDATE 显示添加排他锁 。
- 记录锁: 在行相应的索引记录上的锁 , 锁定一个行记录
- gap锁: 是在索引记录间歇上的锁,锁定一个区间
- next-key锁: 是记录锁和在此索引记录之前的gap上的锁的结合 , 锁定行记录+区间 。
- 意向锁 是为了支持多种粒度锁同时存在;
- 《MySQL技术内幕》
- 《高性能MySql》
- MySQL InnoDB锁机制全面解析分享 segmentfault.com/a/119000001…
- 数据库两大神器【索引和锁】 juejin.im/post/5b55b8…
- InnoDB的逻辑存储结构学习 blog.csdn.net/m0_37752084…
- MySQL索引背后的数据结构及算法原理 blog.codinglabs.org/articles/th…
推荐阅读
- mysql更新一条数据很慢,怎么办?
- 彩瓷茶具的相关信息
- MySQL 读写分离环境搭建
- 宋茶的相关器具
- 非常经典的用于WEB浏览器的相关黑客工具
- 数据库主机及数据库日志收集
- 与利润相关的计算公式 净利润计算公式
- mysql和postgresql时间戳设置
- 21分钟 MySQL 入门教程
- 听说过时序数据库吗?