HikariCp池获取未知系统变量“ tx_isolation”异常

时间:2019-04-10 14:49:38

标签: java hikaricp

我有一个应用程序,用户可以在其中选择任何类型和版本的数据库(相关的),提供URL,用户名,密码并创建数据源,连接到数据库,然后运行SELECT查询。为了连接数据库,我在连接池中使用了HikariCp(在我使用DBCP2之前,因为连接超时不起作用,所以我更改为HikariCp)。这是我的配置

HikariConfig config = new HikariConfig();       
config.setDriverClassName(StringUtils.trimToEmpty(driver));      
config.setJdbcUrl(StringUtils.trimToEmpty(url));
config.setUsername(username);
config.setPassword(password);       
config.setMaximumPoolSize(POOL_MAX_ACTIVE);
config.setMinimumIdle(POOL_INITIAL_SIZE);        
config.setConnectionTestQuery(validationQuery);      
config.setConnectionTimeout(TimeUnit.SECONDS.toMillis(jdbcTimeout));    
HikariDataSource dataSource = new HikariDataSource(config);
Connection connection = dataSource.getConnection();     

当我尝试连接MYsql数据库时,出现以下错误:

HikariPool-8 - Starting... 
2019-04-10  18:45:49  WARN com.zaxxer.hikari.pool.PoolBase:472 - ReqId:60a79ef60413424e96a4fa73010fc861 - HikariPool-8 - Default transaction isolation level detection failed ((conn=14) Unknown system variable 'tx_isolation'). 
2019-04-10  18:45:49 ERROR com.zaxxer.hikari.pool.HikariPool:574 - ReqId:60a79ef60413424e96a4fa73010fc861 - HikariPool-8 - Exception during pool initialization. 
java.sql.SQLException: (conn=14) Unknown system variable 'tx_isolation'
at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.get(ExceptionMapper.java:198)
at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.getException(ExceptionMapper.java:110)

配置有什么问题?使用DBCP2可以正常工作

我正在使用mariadb-java-client版本:'2.2.1'驱动程序连接到Mysql数据库。

0 个答案:

没有答案