gpt4 book ai didi

java - MySQL 连接未关闭

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

我有一个在连接到 MySQL 5.5 的 Tomcat7 上运行的 Web 应用程序。

我有两台服务器运行相同的代码:

  • Ubuntu

  • 红帽

Ubuntu 运行良好,保持稳定的 8-16 个连接,但 Red Hat 会泄漏连接并且连接数增加,永远不会下降。服务器最终重置约 152 个连接。

正在调用关闭连接的代码:

try {
conn.close();
} catch (SQLException e) {
exceptionController.logException(this.getClass().getSimpleName(), "finalize Db", e.getMessage(), false);
}finally{
conn = null;
}

所有与 MySQL 的连接都来自这个应用。

为什么行为不同? 是否有我应该考虑的配置设置 - 例如关闭 hibernate 连接设置

Ubuntu 服务器状态:

enter image description here

红帽服务器状态:

MySQLWorkbench Server Status Screen

连接列表的部分屏幕: MySQLWorkbench Server Connection List

我找到了这个 post ,这似乎减慢了 o/s 连接,但它们仍在缓慢上升。

编辑

研究表明连接未正确关闭。为什么连接会在一个环境中关闭,而在另一个环境中不会关闭?

我已经使用以下设置编辑了 my.cnf:

wait_timeout=30

但是,客户端连接正在 hibernate 并且永远不会被终止。服务器已使用新设置重新启动。

我不明白什么?

最佳答案

我找到了解决方案。 XP SO Database Administrators .

RedHat 有自己的 mysql 文件夹:

[root@localhost ~]# locate my.cnf
/etc/my.cnf
/opt/rh/mysql55/root/etc/my.cnf

这是一个配置问题,我的配置文件没有被使用!

关于java - MySQL 连接未关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26514740/

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