mysql的连接超时设置

Posted 1501220038

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql的连接超时设置相关的知识,希望对你有一定的参考价值。

测试中的新项目有个奇怪的现象,每天早上不能访问,后台报Software caused connection abort: socket write error 错误,重启一下就好了。经查是mysql连接超时设置的问题。默认的wait_timeout 是28800,8个小时。刚好经过一个晚上就超时了。解决办法有两种,一是将连接池中的超时时间设置的短于这个值(本项目用的spring boot data jpa,默认连接,设置后不起作用);方法二,把mysql的这个值设大一些:在[mysqld]下加wait_timeout = 86400。此时是设置的全局设定,可通过命令 show global variables like “%timeout%”;看到变化,而show variables like “%timeout%”;和show session variables like “%timeout%”;仍为原值。

这个值设置为多大应根据应用使用情况来定。太小会导致频繁超时,太多会导致连接长时间不释放,也会出错。所以一方面调整好这个数值,一方面采用更好的连接池方案。

以上是关于mysql的连接超时设置的主要内容,如果未能解决你的问题,请参考以下文章

关于MySql8小时空闲后连接超时问题(testOnBorrow,logAbandoned等)

连接数据库超时设置autoReconnect=true

MySQL连接超时处理

Ubuntu下mysql修改连接超时wait_timeout

spring-boot MySQL 链接 8小时超时

mybatis 连接mysql 遇到8小时问题,怎么解决