产生的原因:应用方的数据库连接有效期时间,大于数据库自己设置的有效期。
解决方案:
一、修改druid配置(如果使用druid的话)
- spring.datasource.druid.validationQuery=select 1
- spring.datasource.druid.testWhileIdle=true
- spring.datasource.druid.testOnBorrow=true
- spring.datasource.druid.testOnReturn=true
PS.此方案对性能会有一定影响
二、修改数据库连接配置
在数据库连接上,加“&autoReconnect=true&failOverReadOnly=false”配置
三、修改数据库连接有效时间
在数据库配置上设置,把数据库连接有效时间设置长一点,比如设置12小时或者24小时
四、还可以参考这篇文章的其它方法:https://www.cnblogs.com/jpfss/p/7206912.html