mysql连接什么情况会断开_解决MySQL自动断开连接的问题

本文介绍了三种解决MySQL连接超时的方法:调整MySQL配置参数、修改JDBC连接URL及配置第三方连接池Proxool.xml。详细说明了如何通过修改wait_timeout等参数来避免连接被MySQL主动断开。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有三个方法可以解决这个问题:

1:修改MySQL配置参数

2:修改JDBC

3:修改第三方的数据库连接池应用 Proxool.xml

方法1的解决方案:

这个参数的名称是wait_timeout,其默认值为28800秒(8小时)。其意义为关闭一个连接之前在这个连接上等到行动的秒数,也就是说,如果一个连接闲置超过这个选项所设置的秒数,MySQL会主动断开这个连接。在其客户程序中可以输入命令语句查看其值:

show variables like '%timeout%'; 或者

命令:show global variables like 'wait_timeout'  查看等待时间

修改操作:

下打开/etc/my.cnf,在属性组mysqld下面添加参数如下:

[mysqld]

interactive_timeout=28800000  (28800000=8000个小时)

wait_timeout=28800000

windows下打开my.ini,增加:

interactive_timeout=28800000

wait_timeout=28800000

在msql5中wait_timeout的最大值分别是24d/365(win/linux);没有办法把这个值设置成无限大,

因此如果你无法保证你的应用程序必定在设定的秒数内至少有一次操作,那么最好用第二个方法解决这个问题。

方法二的解决方案:

修改如下JDBC连接的URL:

jdbc:mysql://hostaddress:3306/schemaname?autoReconnect=true

添加autoReconnect=true这个参数,即能解决这个问题。

方法三的解决方案:

配置文件(proxool.xml):

mysql

jdbc:mysql://localhost/yourDatebase?useUnicode=true&characterEncoding=UTF-8

com.mysql.jdbc.Driver

90000

20

3

20

3

true

true

SELECTCURRENT_USER

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值