打开网站显示"Lock wait timeout exceeded; try restarting transaction"错误怎么办|已解决

Lock wait timeout exceeded; try restarting transaction

 
问题:事务锁等待超时,提示重启事务
 
原因:长事务占用行锁 / 表锁未释放、多个事务竞争同一资源导致死锁、innodb_lock_wait_timeout 配置过小(默认 50 秒)
 
解决方案:
1. 执行 SHOW ENGINE INNODB STATUS; 查看锁等待详情;
2. 优化事务逻辑,缩短事务执行时间(如批量操作拆分);
3. 临时调整锁超时:SET GLOBAL innodb_lock_wait_timeout = 120;,或永久修改 my.cnf 配置
posted @ 2026-03-17 11:03  可有仙子迎风立  阅读(7)  评论(0)    收藏  举报