Druid validationQuery 错误

Druid validationQuery 错误(给自己埋个坑)

ERROR [com.alibaba.druid.pool.DruidDataSource] - invalid oracle validationQuery. SELECT 'x', may should be : SELECT 'x' FROM DUAL
ERROR [com.alibaba.druid.pool.DruidDataSource] - init datasource error, url: jdbc:oracle:thin:@10.28.61.24:1521:sbcsdb
java.sql.SQLException: validateConnection false

上面的错误提示是数据库连接校验,由于于不同数据库需要不同的校验语句造成,需要按照正确的语句进行配置就能解决

<!-- mySQL必须这样配置检查,不然会报检查错误 -->
<property name="validationQuery" value="SELECT 'x'" />

<!-- oracle必须这样配置检查,不然会报检查错误 -->
<property name="validationQuery" value="SELECT 1 FROM DUAL" />

ojdbc14-10.2.jar

<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"

init-method="init" destroy-method="close">

<!-- 基本属性 url、user、password -->

<property name="url" value="${jdbc.url}" />

<property name="username" value="${jdbc.user}" />

<property name="password" value="${jdbc.password}" />

<!-- 配置初始化大小、最小、最大 -->

<property name="initialSize" value="1" />

<property name="minIdle" value="1" />

<property name="maxActive" value="20" />

<!-- 配置获取连接等待超时的时间 -->

<property name="maxWait" value="60000" />

<!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->

<property name="timeBetweenEvictionRunsMillis" value="60000" />

<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->

<property name="minEvictableIdleTimeMillis" value="300000" />

<!-- oracle必须这样配置检查,不了会报检查错误 -->

<property name="validationQuery" value="SELECT 1 FROM DUAL" />

<property name="testWhileIdle" value="true" />

<property name="testOnBorrow" value="false" />

<property name="testOnReturn" value="false" />

<!-- 配置监控统计拦截的filters -->

<property name="filters" value="stat" />

</bean>

下面是mysql的检查配置,默认配置里面是mysql检查语句

<property name="validationQuery" value="SELECT 'x'" />

常用数据库validationQuery检查语句

数据库

validationQuery

Oracle

select 1 from dual

DB2

select 1 from sysibm.sysdummy1 

mysql

select 1 

microsoft sql

select 1

hsqldb

select 1 from INFORMATION_SCHEMA.SYSTEM_USERS

postgresql

select version()

ingres

select 1

derby

select 1

H2

select 1

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值