“错误代码:1205。超过锁定等待超时;尝试重新启动事务”删除事件
Posted
技术标签:
【中文标题】“错误代码:1205。超过锁定等待超时;尝试重新启动事务”删除事件【英文标题】:"Error Code: 1205. Lock wait timeout exceeded; try restarting transaction" on delete event 【发布时间】:2016-08-01 12:36:30 【问题描述】:我正在尝试删除表中的一行
delete from tbllink where linkid=243
但我不断收到该错误消息:
错误代码:1205。超过锁定等待超时;尝试重新启动 交易
正如其他问题中提到的,我尝试运行:
show open tables where in_use>0;
这返回了 0 个结果。我也试过跑步:
show processlist
这返回了这些列:
> 2244 username IP:50487 newdatabasetemp Sleep 1777
> 2247 username IP:50723 newdatabasetemp Sleep 1346
> 2249 username IP:50725 newdatabasetemp Sleep 1285
我尝试重新连接到服务器,但结果仍然相同。
【问题讨论】:
【参考方案1】:需要考虑的几点:
-
innodb_buffer_pool_size 应设置为可用 RAM 的 70% 左右。
你可以执行:
SET GLOBAL innodb_lock_wait_timeout = 5000;
然后这个:
SET innodb_lock_wait_timeout = 5000;
-
能不能把mysql相关的进程全部杀掉,重启服务器再试试?
【讨论】:
【参考方案2】:当我从表中删除所有记录时,我遇到了同样的错误。
除了我没有人使用服务器,所以我继续使用 kill <process id>
一个一个地杀死所有正在运行的进程并且它起作用了。
【讨论】:
以上是关于“错误代码:1205。超过锁定等待超时;尝试重新启动事务”删除事件的主要内容,如果未能解决你的问题,请参考以下文章