解除正在死鎖的狀態有兩種方法:
- 查詢是否鎖表
show OPEN TABLES where In_use > 0; - 查詢進程(如果您有SUPER權限,您可以看到所有線程。否則,您只能看到您自己的線程)
show processlist - 殺死進程id(就是上面命令的id列)
kill id
第二種:
- 查看當前的事務
SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX; - 查看當前鎖定的事務
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS; - 查看當前等鎖的事務
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;
殺死進程
kill 進程ID
