一、数据库连接池简介

image.png

二、SpringBoot中使用的数据库连接池

image.png

属性详细解释:

spring.datasource.hikari.connection-timeout:客户端等待连接池连接的最大毫秒数。即如 果在这个时间内客户端获取不到连接,则会抛出连接超时异常

spring.datasource.hikari.minimum-idle:连接池中维护的最小空闲连接数。即使当前没有任 何客户端使用数据库连接,连接池中也会维护一些连接供将来使用。这个配置就是指定连接池中 保持连接的最小个数

spring.datasource.hikari.maximum-pool-size:最大池大小。因为连接池中的连接会随着客 户端连接的增长而增长,因为客户端不断的申请连接,连接池也需要去创建连接。但是,这种增 长不能是无限制的,这会导致内存被耗尽。所以,这个配置用于限制连接池维护的最大连接数。 一旦与客户端的连接达到了这个数字,即使客户端再来申请,也只能等待其他的客户端释放连 接,或者报连接超时异常

spring.datasource.hikari.idle-timeout:允许连接在连接池中空闲的最长时间(毫秒)。这个 参数比较好理解,空闲的连接一直保持在连接池中,无疑是资源的浪费。所以,超过一定时间之 后,连接池会主动释放掉。但是,需要注意,连接池中总会维护一些连接,这个数字由 minimum-idle控制

spring.datasource.hikari.max-lifetime:池中连接关闭后的最长生命周期(毫秒)。在使用中 的连接永远不会被关闭,只有当它关闭时才会在最长生命周期后删除掉

spring.datasource.hikari.auto-commit:从池返回的连接的默认自动提交行为(默认为 true)。在InnoDb表中,所有的语句都是需要commit后,才会在真实数据库中生效