springboot + druid 配置参数

druid文档:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter

spring:
   datasource:
      druid:
        name: frame
        # 连接数据库的url,不同数据库不一样。例如: 
        # mysql : jdbc:mysql://ip:port/database
        # oracle : jdbc:oracle:thin:@ip:port:database
        url: jdbc:mysql://localhost:3306/demo?characterEncoding=utf-8&useSSL=false&allowMultiQueries=true
        # 链接数据库的用户名
        username: root
        # 链接数据库的用户密码,如果你不希望密码直接写在配置文件中,可以使用ConfigFilter。
        password: 123456
        # 驱动(根据url自动识别)这一项可配可不配,如果不配置druid会根据url自动识别dbType,然后选择相应的driverClassName(建议配置下)
        driver-class-name: com.mysql.jdbc.Driver
        # 数据库类型
        db-type: com.alibaba.druid.pool.DruidDataSource
        # 初始化时建立物理连接的个数。初始化发生在显示调用init方法,或者第一次getConnection时(缺省值:0)
        initialSize: 1
        # 最大连接池数量(缺省值:8)
        maxActive: 20
        # 最小链接池数量
        minIdle: 1
        # 获取连接时最大等待时间,单位毫秒。配置了maxWait之后,缺省启用公平锁,并发效率会有所下降,如果需要可以通过配置useUnfairLock属性为true使用非公平锁。
        maxWait: 60000
        # 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。(缺省值:false)
        pool-prepared-statements: false
        # 要启用PSCache,必须配置大于0,当大于0时,poolPreparedStatements自动触发修改为true。在Druid中,不会存在Oracle下PSCache占用内存过多的问题,可以把这个数值配置大一些,比如说100
        max-open-prepared-statements: -1
        # 用来检测连接是否有效的sql,要求是一个查询语句。如果validationQuery为null,testOnBorrow、testOnReturn、testWhileIdle都不会其作用。
        validationQuery: select 'x'
        # 申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
        testOnBorrow: false
        # 归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能
        testOnReturn: false
        # 建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。
        testWhileIdle: true
        # 1) Destroy线程会检测连接的间隔时间2) testWhileIdle的判断依据,详细看testWhileIdle属性的说明
        timeBetweenEvictionRunsMillis: 60000
        # 配置一个连接在池中最小生存的时间,单位是毫秒
        minEvictableIdleTimeMillis: 300000
        # 物理连接初始化的时候执行的sql
        connectionInitSqls: select 1 from dual
        # 属性类型是字符串,通过别名的方式配置扩展插件,常用的插件有: 监控统计用的filter:stat日志用的filter:log4j防御sql注入的filter:wall
        filters: stat, wall
        filter: 
          # 监控统计
          stat:
            # 数据库类型
            db-type: mysql
            # 慢SQL
            log-slow-sql: true
            # 慢SQL执行时间
            slow-sql-millis: 2000
          wall:
            enabled: true
            db-type: mysql
            config:
              delete-allow: false
              drop-table-allow: false
            
        # statViewServlet配置,说明配置参考druid wiki
        stat-view-servlet:
          # 是否启用statViewServlet配置
          enabled: true
          # 访问监控页面
          url-pattern: "/druid/*"
          # 禁止手动重置监控数据
          reset-enable: false
          # 设置监控页面的登陆名
          login-username: admin
          # 设置监控页面的登陆密码
          login-password: admin

        #WebStatFilter配置,说明请参考Druid Wiki,配置_配置WebStatFilter
        web-stat-filter:
          # 是否启用WebStatFilter
          enabled: true
          # 访问路径
          url-pattern: "/*"
          # 排除不必要的url
          exclusions: "*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*"
          # 监控最大session数,默认是1000
          session-stat-max-count: 1000
          # 是否启用session的统计功能
          session-stat-enable: true
          # 是否启用监控单个Url调用的sql列表
          profile-enable: true
          # 使druid当前session的用户是谁,session_user_key是你保存到session中的sessionName
          principalSessionName: session_user_key
          # 使druid只当当前的user是谁,cookie_user_key是你保存在cookie中的cookieName
          principalCookieName: cookie_user_key      
 108

你可能感兴趣的:(springboot + druid 配置参数)