Integration With HikariCP - shi-yuan/dynamic-datasource-spring-boot-starter GitHub Wiki
HikariCP 官方Github: https://github.com/brettwooldridge/HikariCP 。
- 项目引入
HikariCP
依赖。
SpringBoot2.0开始默认使用HikariCP,除非对版本有要求无需再次引入。
使用SpringBoot 1.5.x的版本需手动引入,对应的版本请根据自己环境和HikariCP官方地址自行选择。
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>3.4.5</version>
</dependency>
- 配置HikariCP的全局参数和每个数据库的独立参数。
spring:
datasource:
dynamic:
hikari: # 全局hikariCP参数,所有值和默认保持一致。(现已支持的参数如下,不清楚含义不要乱设置)
catalog:
connection-timeout:
validation-timeout:
idle-timeout:
leak-detection-threshold:
max-lifetime:
max-pool-size:
min-idle:
initialization-fail-timeout:
connection-init-sql:
connection-test-query:
dataSource-class-name:
dataSource-jndi-name:
schema:
transaction-isolation-name:
is-auto-commit:
is-read-only:
is-isolate-internal-queries:
is-register-mbeans:
is-allow-pool-suspension:
data-source-properties: #以下属性仅为演示(默认不会引入)
serverTimezone: Asia/Shanghai
characterEncoding: utf-8
useUnicode: true
useSSL: false
autoReconnect: true
cachePrepStmts: true
prepStmtCacheSize: 250
prepStmtCacheSqlLimit: 2048
useServerPrepStmts: true
useLocalSessionState: true
rewriteBatchedStatements: true
cacheResultSetMetadata: true
cacheServerConfiguration: true
elideSetAutoCommits: true
maintainTimeStats: false
allowPublicKeyRetrieval: true
health-check-properties:
datasource:
master:
username: root
password: 123456
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://xx.xx.xx.xx:3306/dynamic?characterEncoding=utf8&useSSL=false
hikari: # 以下参数针对每个库可以重新设置hikari参数
max-pool-size:
idle-timeout:
# ......