问题描述:
删除部分数据,在删除的时候出现报错:ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction。
解决方案:
去查看innodb的事务表INNODB_TRX,看下里面是否有正在锁定的事务线程,
看看ID是否在show full processlist里面的sleep线程中,
如果是,就证明这个sleep的线程事务一直没有commit或者rollback而是卡住了,我们需要手动kill掉。
SELECT * FROM information_schema.INNODB_TRX;发现有id为616694的sql,需要手动kill掉
KILL 616694;kill之后,再去执行delete语句,就可以执行成功了。
参考资料:
版权声明:本文为weixin_48419914原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。