Hikari:由于连接已关闭,无法验证连接

时间:2017-10-19 12:42:27

标签: java database hikaricp

我通过play框架和mariadb客户端使用hikari池连接,因为我已经更新了它们(播放2.6.5 - > 2.6.6和mariadb 2.1.1 - > 2.1.2但不确定它是否相关经常我有以下错误:

{{1}}

我发现了一个相关的问题here,并尝试将idleTimeout和maxLifetime更改为2分钟和5分钟,但错误仍然发生。

我正在使用HikariCP 2.7.1,玩2.6.6和mariadb-java-client 2.1.2

1 个答案:

答案 0 :(得分:3)

尽管您写道通过更改maxLifetime值无法成功解决此问题,但我想指出它实际上对我有用。将其值设置为590000已从我的日志文件中删除了警告。

客户端的maxLifetime(以毫秒为单位)值应小于MySQL实例的wait_timeout(以秒为单位)值。这样,客户端将始终在数据库尝试之前终止连接。反之,客户端将尝试对关闭的连接进行操作,您将在日志文件中收到上述警告。

要查看您的MySQL实例的wait_timeout值,可以使用以下查询:

SHOW VARIABLES like '%timeout%';

MariaDB的默认maxLifetime值应为28800,但我注意到600可以在原位,因为正在加载MySQL配置文件。

我应该注意,除了maximum-pool-size中的50之外,我没有其他显式的hikari配置。

顺便说一下,我从https://github.com/brettwooldridge/HikariCP/issues/856得到了灵感。其他非常有用的资源是:https://github.com/brettwooldridge/HikariCP#configuration-knobs-babyhttps://mariadb.com/kb/en/library/server-system-variables/#wait_timeout

相关问题