- 了解数据库的锁吗?
锁机制用于管理对共享资源的并发访问- 锁的类型
- 共享锁 S Lock
- 允许事务读一行数据
 
 - 排它锁 X Lock
- 允许事务删除或更新一条数据
 - 与任何锁不兼容
 
 
 - 共享锁 S Lock
 - 锁的粒度
InnoDB支持多粒度锁定,允许事务在行级上的锁和表级上的锁同时存在- 意向锁
- 将锁定的对象分为多个层次,即在更细的粒度上加锁
 - 意向共享锁 IS
 - 意向排它锁 IX
 
 
 - 意向锁
 - 锁的算法
- Record Lock
- 单个行记录上的锁
 
 - Gap Lock
- 间隙锁,锁定一个范围但不包含本身
 
 - Next-Key Lock
- 锁定一个范围且记录本身
 
 
 - Record Lock
 - 死锁
- 两个或以上的事务执行过程中因争夺资源互相等待
 - 解决死锁
- 超时
 - 等待图 wait-for graph
- 锁的信息链表
 - 事务等待链表
 
 
 
 - 锁的升级
- 指将当前锁的粒度降低
 
 
 - 锁的类型
 - 介绍一下间隙锁
- 为了阻止多个事务将记录插入到同一范围,导致幻读
 
 - InnoDB中行级锁怎么实现
- 通过给索引上的索引项加锁
 - 只有通过索引条件检索数据才是用行级锁
 
 
