首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用MySQL和Slick管理HikariCP连接

使用MySQL和Slick管理HikariCP连接
EN

Stack Overflow用户
提问于 2014-11-01 16:03:29
回答 1查看 730关注 0票数 0

我正在这个软件栈上运行Scala应用程序:

代码语言:javascript
运行
复制
Mac OS X 10.6.8 Snow Leopard
MySQL 5.1.46
Java 1.6.0_65
Scala 2.11.2
ConnectorJ 5.1.33
HikariCP 2.1.0
Slick 2.1.0

我不明白为什么MySQL的开放连接在关闭Scala应用程序之后仍然保持开放。唯一正确的方面是,Threads_connected从16降到1(这是我执行“显示状态”命令的控制台。

代码语言:javascript
运行
复制
mysql> show status like '%onn%';
+--------------------------+-------+
| Variable_name            | Value |
+--------------------------+-------+
| Aborted_connects         | 0     |
| Connections              | 77    |
| Max_used_connections     | 19    |
| Ssl_client_connects      | 0     |
| Ssl_connect_renegotiates | 0     |
| Ssl_finished_connects    | 0     |
| Threads_connected        | 1     |
+--------------------------+-------+
7 rows in set (0.00 sec)

奇怪的是,每次运行该应用程序时,我总是看到连接池(HikariCP maximumPoolSize)中设置的最大打开连接数将打开到DB的连接,因此我可以声明连接从未返回到连接池以供重用。

根据光滑的文档

代码语言:javascript
运行
复制
db withSession { implicit session => 
 /* entering the scope, getting 1 conn from the pool */
 /* 
  do something within the session using the connection I've gotten
 */
}
/* here I'm out of the 'withSession' scope, and the 
   connection should be released */

将在输入其作用域时从池中获取连接,并将其释放出范围。

我是做错了什么,还是在这个软件栈上对连接池的使用做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-01 19:34:40

Connections是自上次启动mysqld以来进行了多少次连接尝试的计数器。此计数器总是增加;当连接结束时,它不会减少。

这个计数器不是当前连接的数量--这是Threads_connected

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26691092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档