标题说到的是现象,原因是应用线程池还hold着数据库已经断掉的连接,就是大家说的“脏连接”。 解决方式:使用应用级别的心跳检测,不使用系统级别的 ping ,使用“select X” 做法:在jvm参数配置Ddruid.mysql.usePingMethod=false,禁止mysql connector自带的ping机制,使用select 'x'到现在两天左右时间里没有再出现communication fail 用了ping来做心跳,就不会用‘select X’ 了。。。
转载于:https://my.oschina.net/nipin/blog/892232