Alibaba Druid 升级到 1.2.5 后报错 discard long time none received connection 的解决方案
最近在给项目的依赖进行升级,当 Alibaba Druid 依赖从低版本升级至 1.2.5 时,项目正常运行,但是查看日志的时候,发现有以下异常:
2021-09-26 05:09:00.009 WARN 8961 --- [ Thread-18]
c.a.druid.pool.DruidAbstractDataSource : discard long time none received connection. ,
jdbcUrl : jdbc:mysql://localhost:3306/xxxxxx?serverTimezone=UTC, version : 1.2.5,
lastPacketReceivedIdleMillis : 120000项目虽然报错,但是却不影响正常运行。搜索相关解决方案,得到的结果 98% 是:
设置 druid.mysql.usePingMethod 为 false但是几乎没有说明在哪里设置、如何设置为 false。
解决这个问题其实也简单,在项目的 Alibaba Druid 配置类中加入以下代码:
@PostConstruct
public void setUsePingMethod(){
System.setProperty("druid.mysql.usePingMethod", "false");
}重新启动项目,观测日志,不再出现错误信息,解决!