在生产服务器的数据库中,调度程序每天运行一个程序,在该程序中我很少有删除插入和更新语句。
但它有时会在使用某些常用表的 1 次更新时抛出 lock wait timeout exceeded 错误。
最初 innodb_lock_wait_timeout 是 50 秒,后来我把它改成了 100,所以问题解决了一段时间,但后来又出现错误,所以我把它改成 120,再次临时解决。现在我已经为全局设置了 150 秒,并在会话中设置了 200(在过程中)。几天后它工作正常。
但是这个过程非常重要,得到错误会产生问题,因为它有非常重要的数据。
那么有没有其他解决方案可以永久解决这个问题?
我是新手请帮忙。
PS Mysql - 5.6 128 GB 内存。使用具有持久连接池的休眠。