死锁是指两个或多个事务相互持有和请求相同资源上的锁,产生了循环依赖。当多个事务试图以不同的顺序锁定资源时会导致死锁。当多个事务锁定相同的资源时,也可能会发生死锁。注意,锁等待时间长和死锁不是一回事,不能混为一谈。
死锁的排查
比如我们再会话1中执行第一条update语句:
SET session innodb_lock_wait_timeout = 3600;
SHOW VARIABLES LIKE 'innodb_lock_wait_timeout';
start transaction;
update