com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Lock wait timeout exceeded暂时解决

网上的建议都是去查出占用的事务ID然后kill掉,但也不可能天天蹲在服务器前杀进程啊,暂时先加大锁的等待时间,让事务能提交上去,久是久了点,后面再找方法排查解决吧,附上设置超时时间设置;有mysql的版本限制,不能sql直接修改的需要去修改mysql配置文件,重启数据库

1.查看当前锁超时时间

show variables like 'innodb_lock_wait_timeout';

2.查看全局锁超时时间

SHOW GLOBAL VARIABLES LIKE 'innodb_lock_wait_timeout';

3.更改当前锁超时时间为120秒

SET innodb_lock_wait_timeout=120;

4.更改全局锁超时时间为120秒

SET GLOBAL innodb_lock_wait_timeout=120;

 

后序:

经过排查,是某个存储过程一直在跑,一直在提交事务,修改存储过程逻辑。观察一段时间,不会再出现事务超时的情况了。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值