锁是计算机协调多个进程或纯线程并发访问某一资源的机制. 在mysql中更是用处多多, 今天就一起看下mysql中的行级锁. 它主要包括行锁, 间隙锁, 临键锁三种....间隙锁(gap lock)
间隙锁是innodb在可重复读提交(RR)事务级别下为了解决幻读问题时引入的锁机制,它锁定一段范围内的索引记录,而不仅仅是这个区间中的每一条数据.
2....记录锁(record lock)
记录锁,也叫行锁,是为某行记录加锁, 它是依赖索引实现的, 一旦某个加锁操作没有使用到索引,那么该锁就会退化为表锁....临键锁(next-key lock)
临键锁是普通索引上的记录锁和间隙锁的组合, 与唯一索引无关.
5....优化 1: 索引上的等值查询,
命中唯一索引,退化为行锁.
命中普通索引,左右两边的gap lock + record lock.