gpt4 book ai didi

mysql - Mysql 上 innodb_lock_wait_timeout 的高值

转载 作者:可可西里 更新时间:2023-11-01 07:07:29 25 4
gpt4 key购买 nike

我们正在尝试获取有关 MySQL 上大型日志表的一些统计信息。某些选择查询的完成时间太长,导致出现异常;
引起:java.sql.SQLException:超过锁定等待超时;尝试重启交易
这导致我们的整个应用程序停止服务并出现相同的错误。经过一番研究,我们决定更改 MySQL 服务器配置的“innodb_lock_wait_timeout”变量。

但是,这种配置更改的缺点是什么?

最佳答案

我不确定这是否适用于您的问题,但您的问题是我刚才处理过的问题。我发现在我的系统上不需要锁,并且与 CREATE TABLE AS SELECT * FROM table_x... 这样的查询相关,这显然锁定了 table_x 中的所有记录,即使在 InooDB 中也是如此。

解决方案是将全局参数 innodb_locks_unsafe_for_binlog 设置为 true(在 my.cnf 中添加行 innodb_locks_unsafe_for_binlog=1)。这改变了 InnoDB 锁定记录的方式。

Here是关于它的一些文档。它确实使我的应用程序免于那些意外的锁定。

关于mysql - Mysql 上 innodb_lock_wait_timeout 的高值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4748527/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com