表锁(偏读)
多适用MyISAM引擎
1、读锁(共享锁)
如果表一获得读锁,当前session可以查询该表记录,当前session不能查询查询其他没有锁定的表,当前session中插入或者更新锁定的表都会提示错误;其他session也可以查询该表的记录,其他session可以查询或者更新未锁定的表,其他session中插入或者更新锁定的表会一直等待获得锁。
2、写锁(排它锁)
如果表一获得写锁,当前session对该表可以进行查询、更新、插入;其他session查询该表被堵塞,需要等待释放。
行锁
多适用InnoDB引擎,一支持事务,二采用行级锁。锁的粒度小,并发度高。
前提是不设置成自动提交。
事务隔离级别:
注意:有时候索引失效的时候,行锁变成表锁;间隙锁危害
学习手动设置行锁