锁的隔离级别事务隔离级别脏读不可重复读幻读读未提交(read-uncommitted)是是是读已提交(read-committed)否是是可重复读(repeatable-read)否否是串行化(serializable))否否否锁的分类粒度划分行锁:Record Lock、Gap Lock、Next-Key Lock表锁页面锁级别划分读锁(Share Locks,S锁)写锁(Exclusive Locks,简称X锁)意向读锁(IS):事务打算给数据行加行共享锁,事务在给一个数据行加共享锁前必须先取得该表的IS锁意向写锁(IX):事务打算给数据行加行排他锁,事务在给一个数据行加排他锁前必须先取得该表的IX锁是否兼容XIXSISX冲突冲突冲突冲突IX冲突兼容冲突兼容S冲突冲突兼容兼容IS冲突兼容兼容兼容加锁流程加锁的基本单位是 next-key lock,锁是加在索引上的查找过程中,访问到的对象才会加锁索引上的等值查询,给唯一索引加锁的时候,next-key lock退化为行锁索引上的等值查询,向右遍历时且最后一个值不满足等值条件的时候,next-key lock退化为间隙锁唯一索引上的范围查询会访问到不满足条件的第一个值为止。