MySql锁分类
一、锁分类
二、意向锁
1、意向锁属于表锁,用于行锁和表锁共存。
2、当获取行锁时,mysql会隐式的获得意向锁
3、作用:当需要获得表锁时,可以判断是否有事务已经获得意向锁而不必遍历所有索引查看具体被谁占用。
三、行锁
MySQL行锁锁的是索引而不是实际的数据行。
四、InnoDB死锁解决
1、选择小的事务。
2、设置参数innodb_lock_wait_timeout
,超时时间,并且将参数innodb_deadlock_detect
打开,当发现死锁的时候,自动回滚其中的某一个事务。
3、按固定顺序操作关联的表
参考:
https://blog.csdn.net/Oooo_mumuxi/article/details/105806483
https://juejin.im/post/6844904197444354062