欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MySQL死锁解决

程序员文章站 2022-04-17 14:38:53
...

PS:原创文章,如需转载,请注明出处,谢谢!     

本文地址:http://flyer0126.iteye.com/blog/2252472

 

    今天在维护CRM系统时,发现数据同步存在问题,接口执行慢且过段时间后报500错误,细探究发现是sql执行时,MySQL Server报错,具体如下:

Error: Lock wait timeout exceeded; try restarting transaction

    数据一直不能执行完成,是由于MySQL的事务产生了死锁,直接重启MySQL服务可以解决,但对于生产环境而言,并不是好的选择。

    利用如下sql,获取锁表事务信息:

SELECT * FROM information_schema.innodb_trx 

    查看持续时间比较长且未commit的事务id(trx_mysql_thread_id),然后kill掉即可。