第一次配置阿里巴巴Druid数据源,系统异常:
ERROR [com.alibaba.druid.pool.DruidDataSource] - create connection SQLException,
url: jdbc:oracle:thin:@127.0.0.1:701:orcldev, errorCode 923, state 42000
java.sql.SQLException: ORA-00923: ?????? FROM ???
经排查发现,问题是druid的数据库配置validationQuery的属性值出错,对于不同的数据库,validationQuery的值是不同的。druid通过validationQuery来判断数据库联通性的,所以validationQuery的值是在当前配置数据库中执行查询,返回不为空数据的一句sql。
常用配置如下:
DataBase | validationQuery |
---|---|
hsqldb | select 1 from INFORMATION_SCHEMA.SYSTEM_USERS |
Oracle | select 1 from dual |
DB2 | select 1 from sysibm.sysdummy1 |
MySql | select 1 |
Microsoft SqlServer | select1 |
postgresql | select version() |
ingres | select 1 |
derby | values 1 |
H2 | select 1 |