参数配置 – Web 项目数据库连接 Druid

Web 项目数据库连接参数配置 – Druid

1. datasource
username: root
password: 123456
url: jdbc:mysql://localhost:3306/dbname?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
driver-class-name: com.mysql.jdbc.Driver
type: com.alibaba.druid.pool.DruidDataSource
2. durid
# 时间单位毫秒
# 启动程序时,在连接池中初始化多少个连接(10-50已足够) def 0
initial-size: 10                               
# 最小连接数 回收空闲连接时,将保证至少有minIdle个连接.(与initialSize相同) def 0
min-idle: 10
# 最大连接数 def 8
max-active: 20

# 最大等待时间 程序向连接池中请求连接时, 超过后,认为本次请求失败 设置-1时表示无限等待 def -1
max-wait: 6000
# 检查空闲连接的频率, 非正整数时表示不进行检查 def 60000
time-between-eviction-runs-millis: 60000
# 回收空闲连接最小时间间隔 池中某个连接的空闲时长达到该值后, 连接池在下次检查空闲连接时,将回收该连接, 要小于防火墙超时设置 def 1800000
min-evictable-idle-time-millis: 300000


# 检查池中的连接是否为可用的SQL语句, drui会连接到数据库执行该SQL, 为空时以下三个配置均无效 def null
validationQuery=SELECT 1
# 当程序请求连接,池在分配连接时,是否先检查该连接是否有效。def false,建议开启,不影响性能
testWhileIdle=true
# def true,开启后会降低性能
testOnBorrow=false
# def false,开启后会降低性能
testOnReturn=false

# PSCache(mysql5.5以下没有PSCache功能,建议关闭掉, 5.5及以上有PSCache,建议开启) def false
poolPreparedStatements=true
# 每个连接最多缓存多少个SQL, 大于0时,poolPreparedStatements自动为true, def -1
maxPoolPreparedStatementPerConnectionSize=20
# 配置扩展插件:stat-监控统计,log4j-日志,wall-防火墙(防止SQL注入),去掉后,监控界面的sql无法统计
filters=stat

# 服务器因连接超时卡顿|卡死
# 是否自动回收超时连接 def false
removeAbandoned=true
# 超时时间(单位:s)
removeAbandonedTimeout=180

# 连接出错后重试时间间隔 def 500
timeBetweenConnectErrorMillis=500
# 连接错误后重试次数 def 1
connectionErrorRetryAttempts=1
数据库连接池在初始化的时候会创建initialSize个连接,当有数据库操作时,会从池中取出一个连接;
如果当前池中正在使用的连接数等于maxActive,则会等待一段时间,等待其他操作释放掉某一个连接,如果这个等待时间超过了maxWait,则会报错;
如果当前正在使用的连接数没有达到maxActive,则判断当前是否空闲连接,如果有则直接使用空闲连接,如果没有则新建立一个连接。
在连接使用完毕后,不是将其物理连接关闭,而是将其放入池中等待其他操作复用;
如果当前的总的连接数少于miniIdle,则会建立新的空闲连接,以保证连接数得到miniIdle;
如果当前连接池中某个连接在空闲了timeBetweenEvictionRunsMillis时间后任然没有使用,则被物理性的关闭掉;

官网连接: https://github.com/alibaba/druid/wiki/DruidDataSource

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值