分析
锁等待超时,由出现死锁或者事务长时间未提交导致的
查看当前事物
通过SHOW FULL PROCESSLIST查看锁记录等待时间
锁等待的四张表
来源库:information_schema
表:
- innodb_trx:当前运行的所有事物
- innodb_locks:当前出现的锁
- innodb_lock_waits:锁等待对应的关系
- processlist:当前进程信息
锁等待超时解决办法
1、清楚线程
通过SHOW FULL PROCESSLIST查看锁记录等待时间
SHOW FULL PROCESSLIST
查询当前运行的所有事务
SELECT * FROM information_schema.innodb_trx
根据当前运行的事务和锁记录进行对比,定位请求锁超时的线程,用kill ID 命令清除线程。
KILL ID