更新查询时Mysql锁等待超时



在生产服务器的数据库中,一个过程每天由调度程序运行,在这个过程中我有很少的删除插入和更新语句。

,但它抛出锁等待超时超过错误有时在一次更新,使用一些常用的表。

最初innodb_lock_wait_timeout是50秒,然后我把它改为100,所以问题解决了一段时间,但后来又发生了错误,所以我把它改为120,再次解决了临时问题。现在我已经设置了150秒的全局和设置200在会话(过程)。从几天开始就很好了。

但是这个过程非常重要,获取错误会产生问题,因为它包含非常重要的数据。

那么有没有其他的办法可以永久解决这个问题呢?

我是新手,请帮忙。

注:Mysql - 5.6128 gb内存。使用具有持久连接池的hibernate

在my.cnf中执行以下操作并重新启动mysql

[mysqld]
innodb_lock_wait_timeout=10000

 SET GLOBAL innodb_lock_wait_timeout = 10000;

你也可以为你的触发会话设置临时超时:

SET innodb_lock_wait_timeout = 10000; 

相关内容

  • 没有找到相关文章

最新更新