问题描述
每次重新部署项目后,执行数据库相关操作都会报个“严重error”,之后再查询数据库就不会有了,目前看来没任何其他影响
24-Apr-2024 20:19:15.195 严重 [http-nio-8082-exec-12] com.alibaba.druid.support.logging.JakartaCommonsLoggingImpl.error testWhileIdle is true, validationQuery not set
24-Apr-2024 20:19:15.225 信息 [http-nio-8082-exec-12] com.alibaba.druid.support.logging.JakartaCommonsLoggingImpl.info {dataSource-1} inited
原因
空闲的时候需要进行检测,但是检测的查询语句没有设置。大致意思就是说,当数据库没有接收到请求时,会进行数据库连接检测,检查数据库是否还是连着的。检查数据库是否断开需要发送sql语句。报错是说这个sql语句没有设置。
解决
很多种解决方案,但是我现在好像还没用到application.yml
这个文件,大概也是配置文件,按这篇文章说的改了下好像也管用
testOnBorrow="false"
testOnReturn="false"
testWhileIdle="false"
加上这个就没有第一行的error了,但是第二行还是有,也不太懂,就这样先记录下吧。
参考
Error: testWhileIdle is true, validationQuery not set
testWhileIdle is true,validationquery not set
testWhileIdle is true, validationQuery not set
com.alibaba.druid.pool.DruidDataSource : testWhileIdle is true, validationQuery not set