mysql连接报错The last packet successfully received from the server was 10,047 milliseconds ago.
当程序里的Connection超过数据库指定的时长以后,如果还没有会话信息,则服务器会断开此连接,但是客户端是无感知的,当客户端拿着这个断开的连接再去访问时,就会报这个错误信息。poolPingConnectionsNotUsedFor:连接活跃检测的间隔时间,这个时间一定要小于mysql服务器的wait_timeout。此报错信息往往与mysql数据库服务器设置的wait_timeout时间参数
文章共598字 · 阅读需要大约2分钟
一键AI生成摘要,助你高效阅读
问答
·
The last packet successfully received from the server was 10,047 milliseconds ago.
此报错信息往往与mysql数据库服务器设置的wait_timeout时间参数有关。
- 查看服务器wait_timeout 连接参数(单位:秒)
show global variables like 'wait_timeout';
- 设置最大连接时长
set global wait_timeout=10;
当程序里的Connection超过数据库指定的时长以后,如果还没有会话信息,则服务器会断开此连接,但是客户端是无感知的,当客户端拿着这个断开的连接再去访问时,就会报这个错误信息。
- 基于mybatis的连接池方式设置连接参数
<property name="poolMaximumIdleConnections" value="0"/>
<property name="poolMaximumActiveConnections" value="10"/>
<property name="poolPingEnabled" value="true" />
<property name="poolPingQuery" value="select 1"/>
<property name="poolPingConnectionsNotUsedFor" value="3500"/>
poolMaximumActiveConnections:设置最大连接数
poolMaximumIdleConnections:设置空闲时间的连接数
poolPingEnabled:开启连接检测
poolPingQuery:连接检测sql
poolPingConnectionsNotUsedFor:连接活跃检测的间隔时间,这个时间一定要小于mysql服务器的wait_timeout。
更多推荐
已为社区贡献3条内容
所有评论(0)