Spring 启动 - Tomcat jdbc 数据库服务器重启后连接池未恢复

Spring Boot - Tomcat jdbc connection pool does not recover after database server is restarted

我有一个 Spring Boot (1.5.17) Web 应用程序,Tomcat JDBC 连接池 (8.5.34) 配置如下:

primary.datasource.tomcat.testOnBorrow=true 
primary.datasource.validationQuery=SELECT 1
primary.datasource.validationInterval=35000
primary.datasource.initial-size=10
primary.datasource.max-active=50
primary.datasource.max-idle=20
primary.datasource.min-idle=10

现在,如果我重新启动数据库服务器(SQL 服务器),我会得到 com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed 异常并且连接池不会恢复。

那我做错了什么?

我发现错误了。我在写入配置密钥时出错 primary.datasource.tomcat.testOnBorrow。应该是primary.datasource.testOnBorrow。现在它工作正常。连接池在数据库服务器重启后几乎立即恢复。

如果有人遇到类似问题,这是我的最终配置。

primary.datasource.testOnBorrow=true
primary.datasource.validationQuery=SELECT 1
primary.datasource.validationInterval=55000
primary.datasource.initial-size=5
primary.datasource.min-idle=5
primary.datasource.max-idle=10
primary.datasource.max-active=20
primary.datasource.removeAbandoned=true