Hikari 数据源参数配置描述
###############################################hikari############################################
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
指定数据库驱动名称,不支持XA data。如果使用jdbcUrl配置则不需要配置该值。默认值:none。
参考https://github.com/brettwooldridge/HikariCP#popular-datasource-class-names
spring.datasource.hikari.dataSourceClassName=
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?characterEncoding=UTF8&useSSL=false
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.hikari.autoCommit=true
连接建立超时时间 单位ms 默认30000
spring.datasource.hikari.connectionTimeout=30000
空闲连接超时时间 单位ms 最小10000(10s) 默认600000(10min)
当minimumIdle小于maximumPoolSize时有效
0 空闲连接永远不会被移除
spring.datasource.hikari.idleTimeout=30000
最小空闲连接数,默认值maximumPoolSize。当空闲连接低于该值且总连接数低于maximumPoolSize时,HikariCP会立即添加连接来保证一个高效的性能
但是,HikariCP 不建议配置该值,建议使用默认值,让HikariCP维护一个固定连接数的连接池来保持高效。
spring.datasource.hikari.minimumIdle=
最大连接数(包含空闲和正在使用的连接),默认值10.当连接数达到该值时,新的连接申请会被阻塞直到超时。
spring.datasource.hikari.maximumPoolSize=10
一个连接在连接池中的最长存活时间,正在被使用的链接如果超时会等到关闭后被移除
最小30000ms (30 seconds). Default: 1800000 (30 minutes)
0 连接永不超时
spring.datasource.hikari.maxLifetime=1800000
连接测试查询语句,如果驱动支持JDBC4,强烈建议不配置该属性
尝试不配置该属性来运行连接池,如果驱动不支持JDBC4,HikariCP会打出一个错误日志通知你。默认值:none
spring.datasource.hikari.connectionTestQuery=
指标记录,默认:none。这个属性只适用于程序配置或ioc容器,允许你指定一个Codahale/Dropwizard MetricRegistry来记录指标。
参考:https://github.com/brettwooldridge/HikariCP/wiki/Dropwizard-Metrics
spring.datasource.hikari.metricRegistry=
健康检查,默认:none。允许你指定一个Codahale/Dropwizard HealthCheckRegistry来报告当前健康信息。
参考https://github.com/brettwooldridge/HikariCP/wiki/Dropwizard-HealthChecks
spring.datasource.hikari.healthCheckRegistry=
连接池名称。Default: auto-generated
spring.datasource.hikari.poolName=hikariPool
##########################HikariCP不常用的配置#####################
spring.datasource.hikari.initializationFailTimeout=1
是否在其自己的事务中隔离内部池查询
由于这些查询通常是只读查询,所以很少需要将它们封装在自己的事务中。
此属性仅适用于禁用autoCommit的情况。默认值:false
spring.datasource.hikari.isolateInternalQueries=false
连接池是否可以被JMX挂起和恢复。在挂起状态下,获取连接将不会超时,会被阻塞直到连接池恢复。,默认false。
spring.datasource.hikari.allowPoolSuspension=false
指定从连接池获取到的连接在默认情况下是否是只读模式的。这个取决于数据库和应用,默认false。
spring.datasource.hikari.readOnly=false
是否注册Mbeans,默认false。
spring.datasource.hikari.registerMbeans=false
连接初始化sql。当一个连接被创建后,在放入连接池之前,执行这条语句来确认是否是有效连接。默认值none。
spring.datasource.hikari.connectionInitSql=
支配驱动类名称,一般不需要配置,hikari会根绝jdbcUrl来解析使用响应的驱动,如果找不到会打印错误日志来通知你。
spring.datasource.hikari.driverClassName=com.mysql.jdbc.Driver
指定从连接池获取到的连接的默认事务隔离级别。枚举值来自Connection class的常量。例如TRANSACTION_READ_COMMITTED, TRANSACTION_REPEATABLE_READ等。
默认情况下是数据库的默认隔离级别。
spring.datasource.hikari.transactionIsolation=
连接测试超时时间。最小值250ms,不能超过connectionTimeout。默认值5000
spring.datasource.hikari.validationTimeout=5000
连接离开连接池后一定时间,会通过日志记录可能存在连接泄漏。该属性配置的是这个时间。
0 表示不启用连接泄漏检测。最小值是2000 单位ms。默认值0。
spring.datasource.hikari.leakDetectionThreshold=0
指定数据源。你可以自己封装数据源,不用通过hikari来反射生成。
配置了该属性后,dataSourceClassName和所有DataSource-specific的属性都会被忽略。
spring.datasource.hikari.dataSource=
指定hikari连接池创建线程的线程工厂。默认值none。ThreadFactory 实例
spring.datasource.hikari.threadFactory=
提供ScheduledExecutorService 实例。HikariCP在setRemoveOnCancelPolicy(true)时会使用。默认值none。
spring.datasource.hikari.scheduledExecutor=
为支持catalog的数据库设置默认的catalog,默认依赖于jdbc驱动。
spring.datasource.hikari.catalog=
为支持schema的数据库设置默认的schema,默认依赖于jdbc驱动。
spring.datasource.hikari.schema=