【MySQL用法】Mysql数据库连接池 [ druid ] 的所有配置介绍
以下内容为Druid连接池的配置含义及介绍(properties、yml、xml文件格式不同,遵循各自文件格式即可,但是内容都一样),下面是propterties文件的格式:
连接池配置
# druid # 初始连接的个数 spring.datasource.druid.initial-size = 1 # 最大连接池数量 spring.datasource.druid.max-active = 20 # 配置获取连接等待超时的时间 spring.datasource.druid.max-wait = 60000 # 最小连接池数量 spring.datasource.druid.min-idle = 1 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 spring.datasource.druid.time-between-eviction-runs-millis = 60000 # 配置一个连接在池中最小生存的时间,单位是毫秒 spring.datasource.druid.min-evictable-idle-time-millis = 300000 # 配置一个连接在池中最大生存的时间,单位是毫秒 spring.datasource.druid.max-evictable-idle-time-millis = 900000 # 配置检测连接是否有效 spring.datasource.druid.validation-query = select 'x' # 指明连接是否被空闲连接回收器(如果有)进行检验,如果检测失败,则连接将被从池中去除。 # 注意:设置为true后如果要生效,validationQuery参数必须设置为非空字符串 spring.datasource.druid.test-while-idle = true # 指明是否在从池中取出连接前进行检验,如果检测失败,则从池中去除连接并尝试取出另一个。 # 注意:设置为true后如果要生效,validationQuery参数必须设置为非空字符串 # 重点:当设置为true时,低效,会影响性能,建议设置为false spring.datasource.druid.test-on-borrow = false # 指明是否在归还到池中前进行检验。注意: 设置为true后如果要生效,validationQuery参数必须设置为非空字符串 # 重点:当设置为true时,低效,会影响性能,建议设置为false spring.datasource.druid.test-on-return = false spring.datasource.druid.pool-prepared-statements = true spring.datasource.druid.max-open-prepared-statements = 20 # 配置监控统计拦截filters,去掉后监控页面无法统计sql,'wall'用于防火墙 spring.datasource.druid.filters= stat,wall,log4j # WebStatFilter配置,说明请参考Druid Wiki,配置WebStatFilter # 是否启用StatFilter,默认值true spring.datasource.druid.filter.stat.enabled = true # 慢SQL时间,单位为毫秒 spring.datasource.druid.filter.stat.slow-sql-millis = 10000 # 慢SQL记录 spring.datasource.druid.filter.stat.log-slow-sql = true spring.datasource.druid.filter.config.enabled = true spring.datasource.druid.filter.encoding.enabled = true spring.datasource.druid.filter.wall.enabled = true # StatViewServlet配置,说明请参考Druid Wiki,配置StatViewServlet配置 # 是否启用StatViewServlet,默认true,内置监控页面首页/druid/index.html spring.datasource.druid.stat-view-servlet.enabled = true spring.datasource.druid.stat-view-servlet.url-pattern = /system/druid/*
监控配置
# Spring监控配置,说明请参考Druid Github Wiki,配置_Druid和Spring关联监控配置 # Spring监控AOP切入点,如x.y.z.service.*, 配置多个用英文逗号分隔 # 如果spring.datasource.druid.aop-patterns要代理的类没有定义interface,请设置spring.aop.proxy-target-class = true spring.datasource.druid.aop-patterns = com.soft.site.module.web.cms.service.*,com.soft.site.module.web.system.service.*
Druid超时回收机制
# druid recycle spring.datasource.druid.removeAbandoned = true # 超时时间;单位为秒。180秒=3分钟 spring.datasource.druid.removeAbandonedTimeout = 180 # 关闭abanded连接时输出错误日志 spring.datasource.druid.logAbandoned = true