Spring Boot 配置MySQL数据库重连的操作方法
使用jdbc连接MySQL,如果连接失效,可能会报类似的错误:
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Thelastpacketsuccessfullyreceivedfromtheserverwas84,371,623millisecondsago.
Thelastpacketsentsuccessfullytotheserverwas78,860,631millisecondsago.islongerthantheserverconfiguredvalueof'wait_timeout'.
Youshouldconsidereitherexpiringand/ortestingconnectionvaliditybeforeuseinyourapplication,increasingtheserverconfiguredvaluesforclienttimeouts,orusingtheConnector/Jconnectionproperty'autoReconnect=true'toavoidthisproblem.
如错误提示,可以在连接的url上添加autoReconnect=true来解决。
需要注意的是:mysql是不推荐使用autoReconnect配置,因为如果没有合适处理SQLException的话,它会带来一些数据一致性的副作用,可以参考:https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-configuration-properties.html中的autoReconect部分。
springboot1.4+需要看使用的是什么数据库连接池库,支持的连接池包括:tomcat,hikari,dbcp(1.5+废弃),dbcp2。
tomcat
spring.datasource.tomcat.test-on-borrow=true spring.datasource.tomcat.validation-query=SELECT1
dbcp2
spring.datasource.dbcp2.test-on-borrow=true spring.datasource.dbcp2.validation-query=SELECT1
总结
以上所述是小编给大家介绍的SpringBoot配置MySQL数据库重连的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!