您的位置:首页 > 数据库 > MySQL

MySql ERROR 1205:Lock wait timeout exceeded; try restarting transaction

2016-01-04 11:50 513 查看
现象

A.数据更新或新增后数据经常自动回滚。

B.表操作总报 Lock wait timeout exceeded 并长时间无反应

解决方法

A.应急方法:show processlist; kill掉出现问题的进程

B.根治方法:select * from innodb_trx 查看有是哪些事务占据了表资源。

        C.我的方法:设置MySQL锁等待超时 innodb_lock_wait_timeout=50 ,autocommit=on

该类问题导致原因

据我分析,Mysql的 InnoDB存储引擎是支持事务的,事务开启后没有被主动Commit。导致该资源被长期占用,其他事务在抢占该资源时,因上一个事务的锁而导致抢占失败!因此出现 Lock wait timeout exceeded 

转载地址:http://my.oschina.net/quanzhong/blog/222091
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: