### 如果Hikari连接池遇到Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl问题注意从下面三个方向排查。
1. Hikari连接池的max-lifetime(默认30分钟)(对应springboot中的spring.datasource.hikari.max-lifetime)是否大于了MySQL中 wait_timeout 和 interactive_timeout (默认8小时)。
2. 检查MySQL服务的/etc/my.cnf配置文件中 wait_timeout 和 interactive_timeout 两个超时时间是否和通过sql SHOW VARIABLES LIKE ‘%timeout%’查出的结果一致。
1. wait_timeout 服务器关闭非交互连接之前等待活动的秒数
2. interactive_timeout 服务器关闭交互式连接前等待活动的秒数,同时设置interactive_timeout和wait_timeout才会生效
3. 检查是否和笔者的情况一下,dba为了节约连接资源,通过脚本定时清理了长时间没有请求的连接。
4. 查当前的连接数量,设置最大连接数量
1. show status like ‘max_used_connections’;
2. show processlist; // 连接明细
3. set global max_connections=1000; // 设置
4. 通过修改配置文件来修改mysql最大连接数(max_connections)。只要修改MySQL配置文件my.ini 或 my.cnf的参数max_connections,将其改为max_connections=1000
5. kill id; // 关闭指定连接