[英]How do I configure HikariCP in mySpringBoot application.yml?
我一直在尝试在我的 yaml 中配置几个 HikariCP 属性,如下所示,
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
hikari:
maximum-pool-size: 20
leakDetectionThreshold: 60000 # 60 seconds
当我在启用 Hikari 调试的情况下启动我的服务时,我看到它似乎没有选择更改,
2020-06-17 17:47:54,144 [DEBUG] ( 1) HikariConfig:1020 HikariPool-1 - configuration:
2020-06-17 17:47:54,147 [DEBUG] ( 1) HikariConfig:1052 allowPoolSuspension.............false
2020-06-17 17:47:54,147 [DEBUG] ( 1) HikariConfig:1052 autoCommit......................true
2020-06-17 17:47:54,147 [DEBUG] ( 1) HikariConfig:1052 catalog.........................none
2020-06-17 17:47:54,147 [DEBUG] ( 1) HikariConfig:1052 connectionInitSql...............none
2020-06-17 17:47:54,147 [DEBUG] ( 1) HikariConfig:1052 connectionTestQuery.............none
2020-06-17 17:47:54,147 [DEBUG] ( 1) HikariConfig:1052 connectionTimeout...............30000
2020-06-17 17:47:54,147 [DEBUG] ( 1) HikariConfig:1052 dataSource......................none
2020-06-17 17:47:54,147 [DEBUG] ( 1) HikariConfig:1052 dataSourceClassName.............none
2020-06-17 17:47:54,148 [DEBUG] ( 1) HikariConfig:1052 dataSourceJNDI..................none
2020-06-17 17:47:54,148 [DEBUG] ( 1) HikariConfig:1052 dataSourceProperties............{password=<masked>}
2020-06-17 17:47:54,150 [DEBUG] ( 1) HikariConfig:1052 driverClassName................."com.mysql.cj.jdbc.Driver"
2020-06-17 17:47:54,151 [DEBUG] ( 1) HikariConfig:1052 healthCheckProperties...........{}
2020-06-17 17:47:54,151 [DEBUG] ( 1) HikariConfig:1052 healthCheckRegistry.............none
2020-06-17 17:47:54,151 [DEBUG] ( 1) HikariConfig:1052 idleTimeout.....................600000
2020-06-17 17:47:54,151 [DEBUG] ( 1) HikariConfig:1052 initializationFailTimeout.......1
2020-06-17 17:47:54,151 [DEBUG] ( 1) HikariConfig:1052 isolateInternalQueries..........false
2020-06-17 17:47:54,151 [DEBUG] ( 1) HikariConfig:1052 jdbcUrl.........................jdbc:mysql:replication://address=(type=master)(host=1.2.3.4),address=(type=master)(host=1.3.2.8)/test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC
2020-06-17 17:47:54,151 [DEBUG] ( 1) HikariConfig:1052 leakDetectionThreshold..........0
2020-06-17 17:47:54,152 [DEBUG] ( 1) HikariConfig:1052 maxLifetime.....................1800000
2020-06-17 17:47:54,152 [DEBUG] ( 1) HikariConfig:1052 maximumPoolSize.................10
2020-06-17 17:47:54,152 [DEBUG] ( 1) HikariConfig:1052 metricRegistry..................none
2020-06-17 17:47:54,152 [DEBUG] ( 1) HikariConfig:1052 metricsTrackerFactory...........com.zaxxer.hikari.metrics.micrometer.MicrometerMetricsTrackerFactory@4d210648
2020-06-17 17:47:54,152 [DEBUG] ( 1) HikariConfig:1052 minimumIdle.....................10
2020-06-17 17:47:54,152 [DEBUG] ( 1) HikariConfig:1052 password........................<masked>
2020-06-17 17:47:54,152 [DEBUG] ( 1) HikariConfig:1052 poolName........................"HikariPool-1"
2020-06-17 17:47:54,152 [DEBUG] ( 1) HikariConfig:1052 readOnly........................false
2020-06-17 17:47:54,152 [DEBUG] ( 1) HikariConfig:1052 registerMbeans..................false
2020-06-17 17:47:54,153 [DEBUG] ( 1) HikariConfig:1052 scheduledExecutor...............none
2020-06-17 17:47:54,153 [DEBUG] ( 1) HikariConfig:1052 schema..........................none
2020-06-17 17:47:54,153 [DEBUG] ( 1) HikariConfig:1052 threadFactory...................internal
2020-06-17 17:47:54,153 [DEBUG] ( 1) HikariConfig:1052 transactionIsolation............default
2020-06-17 17:47:54,153 [DEBUG] ( 1) HikariConfig:1052 validationTimeout...............5000
我错过了什么吗?
在Spring 引导文档中 Hikari 设置如下所示:
spring:
datasource:
hikari:
driver-class-name: com.mysql.cj.jdbc.Driver
maximum-pool-size: 20
leakDetectionThreshold: 60000 # 60 seconds
由于您使用的是 Spring 引导,正确的格式应该是:
spring:
datasource:
hikari:
driver-class-name: com.mysql.cj.jdbc.Driver
maximum-pool-size: 20
leak-detection-threshold: 10000
实际上使用 dash( leak-detection-threshold ) 或 camelCase( leakDetectionThreshold ) 会很好,最好让它保持一致。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.