2021-09-16
如何在MySQL上调试超出锁等待超时的时间?
在生产错误日志中,会看到:
SQLSTATE [HY000]:常规错误:1205超出了锁定等待超时;尝试重新启动事务,有没有办法找出在那个准确时刻哪个查询具有锁定?
我来答
添加附件
收藏
分享
问题补充
3条回答
默认
最新
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏
在生产错误日志中,会看到:
SQLSTATE [HY000]:常规错误:1205超出了锁定等待超时;尝试重新启动事务,有没有办法找出在那个准确时刻哪个查询具有锁定?
很好调试出来
mysql 有sleep函数。
可以用在update,select 中
比如 select *,sleep(100) from t
注意这里的sleep(100)是按行sleep的。且sleep(N)N的单位是秒
select *,sleep(100) from t 有10行
则每行都会sleep(100) 那么这个select语句至少要执行1000s
评论
有用 0默认50秒。
你直接看参数
show variables like ‘%timeout%’
这个为什么要调试?
评论
有用 0
墨值悬赏