今天遇到了mysql无法增加字段,于是排查了很久,终于在网上找到解决案了:https://my.oschina.net/quanzhong/blog/222091
此问题的原因是我debug的时候没有放开debug造成的,遇到这种问题建议一般是把环境重置后,再排查。
-
环境
MySQL5.5 引擎:InnoDB
-
现象
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