gpt4 book ai didi

MySQL: "lock wait timeout exceeded"

转载 作者:IT老高 更新时间:2023-10-29 00:14:07 25 4
gpt4 key购买 nike

我正在尝试从 MySQL 5.0.45 数据库中删除几行:

delete from bundle_inclusions;

客户端工作一段时间后返回错误:

Lock wait timeout exceeded; try restarting transaction

可能有一些未提交的事务在该表上具有锁,但我需要这个过程来胜过任何此类锁。如何破解 MySQL 中的锁?

最佳答案

我同意埃里克的观点;截断表是要走的路。但是,如果由于某种原因您不能使用它(例如,如果您真的不想删除表中的每一行),您可以尝试以下选项:

  • 以较小的批处理删除行(例如,从 bundle_inclusions 中删除 ID BETWEEN ? 和 ?)
  • 如果它是一个 MyISAM 表(实际上,这也适用于 InnoDB),请尝试在 DELETE 之前发出一个 LOCK TABLE。这应保证您拥有独占访问权限。
  • 如果它是 InnoDB 表,则超时发生后,使用 SHOW INNODB STATUS。这应该可以让您深入了解锁定获取失败的原因。
  • 如果您拥有 SUPER 权限,您可以尝试 SHOW PROCESSLIST ALL 来查看其他连接(如果有的话)正在使用该表,然后使用 KILL 来摆脱与您竞争的连接。<

我相信还有很多其他的可能性;我希望其中之一有所帮助。

关于MySQL: "lock wait timeout exceeded",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64653/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com