原文档:https://www.jianshu.com/p/750904730726
一:检查是否锁表, 查询进程并杀死进程
1) 查询是否锁表
show open tables where in_use > 0;
2) 查询进程(如果您有SUPER权限,您可以看到所有线程。否则,您只能看到您自己的线程)
show processlist;
3) 杀死进程(就是[show processlist;]命令的id列)
kill 8
二:查看在锁事务,杀死事务对应的线程ID
1) 查看正在锁的事务
select * from information_schema.INNODB_LOCKS;
2) 杀死进程id(就是[select * from information_schema.INNODB_LOCKS; ]命令的trx_mysql_thread_id列)
kill 线程ID
3) 查看等待锁的事务
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;
其它:
1) 查看服务器状态
show status like '%lock%';
2) 查看超时时间:
show variables like '%timeout%';