十五、mysql锁
文章目录
- 1. 概述
- 2. MySQL并发事务访问相同记录
- 2.1 读-读情况
- 2.2 写-写情况
- 2.3 读-写或写-读情况
- 2.4 并发问题的解决方案
- 3. 锁的不同角度分类
- 3.1 从数据操作的类型划分:读锁、写锁
- 3.1.1 锁定读
- 3.1.2 写操作
- 3.2 从数据操作的粒度划分:表级锁、页级锁、行锁
- 3.2.1 表锁(Table Lock)
- 3.2.2 InnoDB中的行锁
- 3.2.3 页锁
- 3.3 从对待锁的态度划分:乐观锁、悲观锁
- 3.3.1 悲观锁(Pessimistic Locking)
- 3.3.2 乐观锁(Optimistic Locking)
- 3.3.3 两种锁的适用场景
- 3.4 按加锁的方式划分:显示锁、隐式锁
- 3.4.1 隐式锁
- 3.4.2 显示锁
- 3.5 其他锁之:全局锁
- 3.6 其他锁之:死锁
- 3.6.1 概述
- 3.6.2 产生死锁的必要条件
- 3.6.3 如何处理死锁
- 3.6.4 如何避免死锁
- 4. 锁的内存结构
- 5. 锁监控