日期:2014-05-16  浏览次数:20838 次

mysql Lock wait timeout exceeded
我想一次提交很多条DML语句,这些DML 操作的表有的是 重复的。
按说一个事务里不会有 Lock wait,但是为什么会发生
Lock wait timeout exceeded; try restarting transaction

求解:

------解决方案--------------------
你在执行批量dml的时候 别的事务阻塞了你这个dml语句
------解决方案--------------------
一个事务中不会有 WAIT LOCK,但此刻其它连接如果LOCK了你需要的表,那当前事务就只能等别人UNLOCK。 如果过长,则会自动放弃锁的请求,从而整个事务回滚。