目录
1:问题
Lock wait timeout exceeded; try restarting transaction

2:出现这个错误的原因
锁等待超时,当前事务在等待其它事务释放锁资源造成的。【一般是操作失误,在开启事务的处理逻辑的时候,处理成功或者失败的时候没有 提交事务或者回滚事务操作】导致锁等待
3:解决方式
show full processlist (显示哪些线程正在运行)
select * from information_schema.innodb_trx; (命令是用来查看当前运行的所以事务)
记录里面找到记录对应的状态是:LOCK WAIT的就是锁等待的,此时你可以直接将其kill掉
kill 41759574 (注意该值是:thx_mysql_thread_id列对应的线程值)

当遇到'Lock wait timeout exceeded; try restarting transaction'错误时,通常是由于事务在等待其他事务释放锁资源导致的。解决方法包括使用`show full processlist`查看运行线程,通过`information_schema.innodb_trx`找出LOCK WAIT状态的事务,然后使用`kill`命令终止相应线程。
最低0.47元/天 解锁文章
2353

被折叠的 条评论
为什么被折叠?



