MYSQL数据库自动断开连接

第一次往服务器上传项目,结果第二天就开始报错,访问不了数据库,以为谁不小心把数据库删了,看了看发现数据库数据都在,又重启了一下tomcat发现有能用了,就很迷,然后百度了一下发现,MySQL数据库8小时不访问就自动断开链接了。

看大佬们的博客发现一共三种解决方案。

一:修改MySQL配置参数

这个参数的名称是 wait_timeout,其默认值为 28800秒(8小时)。其意义为关闭一个连接之前在这个连接上等到行动的秒数,也就是说,如果一个连接闲置超过这个选项所设置的秒数,MySQL会主动断开这个连接。

修改操作:

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

[mysqld]

interactive_timeout=28800000

wait_timeout=28800000

 

windows下打开my.ini,增加:

interactive_timeout=28800000

wait_timeout=28800000

有实践表明,没有办法把这个值设置成无限大,即永久。因此如果你无法保证你的应用程序必定在设定的秒数内至少有一次操作。不推荐

二:修改JDBC

修改如下JDBC连接的 URL:

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

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

我就是用的这种方法,不过长时间不访问后,第一次访问还是没有链接到数据库,关掉页面第二次访问才链接到,不清楚是我写的有问题,还是这个参数就是这样希望来个大佬解答一下。

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

配置文件(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

你可能感兴趣的:(知识点,数据库)