我的mysql报这个错 err=1205 - Lock wait timeout exceeded; try restarting transaction,利用 SHOW PROCESSLIST来查看问题.
原因:原因是你使用的InnoDB 表类型的时候,默认参数:innodb_lock_wait_timeout设置锁等待的时间是50s,因为有的锁等待超过了这个时间,所以抱错.你可以把这个时间加长,或者优化存储过程,事务避免过长时间的等待.
解决的办法:innodb_lock_wait_timeout 锁定等待时间改大,my.ini文件,如下代码:
- #innodb_lock_wait_timeout=50
- --修改为
- innodb_lock_wait_timeout=500