解决卡住的 MySQL 表的“锁定等待超时超出”
最近出现了一个问题,导致执行不带 WHERE 子句的 SQL 更新在扩展表锁中。这导致在尝试删除受影响的索引时出现“超出锁定等待超时;尝试重新启动事务”错误。
为了解决这种情况,建议识别并终止任何卡住的事务。这可以通过在 MySQL 命令行界面中使用 SHOW PROCESSLIST 命令检查正在运行的线程来实现。
查找并杀死卡住的线程
运行以下命令命令:
SHOW PROCESSLIST;
要终止卡住的线程,请执行 KILL 命令,后跟其 ID,如图所示下面:
KILL <thread ID>;
示例
例如,要终止 ID 为 115 的线程,请使用以下命令:
KILL 115;
一旦卡住的线程被终止,表应该被解锁并且索引删除操作可以继续正常情况下。
以上是如何解决MySQL表卡住的'超过锁定等待超时”?的详细内容。更多信息请关注PHP中文网其他相关文章!