Ubuntu 16 长时间连接mysql 报错:Communications link failure

在自己的服务器下面部署了两个Springboot项目,每次都是隔了一周左右mysql就会显示连接不上了,然后每次都是重启mysql服务草草了事,今天又是这样子了,痛定思痛,决定把这个问题解决。

首先google了一下,网上说是出现这个问题是因为超时,数据库连接(java.sql.Connection)连接关闭,因此可以设置连接最长时间,wait_timeout的默认最长时间是28800秒,也就是8小时时间

解决方案如下:

1.直接重启mysql(短期): 在服务器命令行敲入: service mysql restart
2.修改配置文件(长期):
因为连接到服务器默认都是管理员模式,所以命令前缀就不用带上sudo了,直接使用vim编辑器打开mysql配置文件:vim /etc/mysql/my.cnf
然后在末尾添加如下配置:

[mysqld]
wait_timeout=31536000
interactive_timeout=31536000

3.跟换mysql驱动版本,不同的驱动版本连接的时长不同,本人的是8.0.17
4.修改连接的url中 “jdbc:mysql://localhost:3306/test”;//?autoReconnect=true&failOverReadOnly=false"将localhost改成127.0.0.1

猜你喜欢

转载自blog.csdn.net/WXZCYQ/article/details/105610123