Druid數據庫連接池

注: https://blog.csdn.net/weixin_43453386/article/details/83582399

配置:

spring:
  datasource:
 	  # 基本屬性
      name: dev
      url: jdbc:mysql://127.0.0.1:3306/test?autoReconnect=true&useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull&useSSL=false
      username: root
      password: 123456
      # 可以不配置,根據url自動識別,建議配置
      driver-class-name: com.mysql.jdbc.Driver
      ###################以下爲druid增加的配置###########################
      type: com.alibaba.druid.pool.DruidDataSource
      # 初始化連接池個數
      initialSize: 5
      # 最小連接池個數——》已經不再使用,配置了也沒效果
      minIdle: 2
      # 最大連接池個數
      maxActive: 20
      # 配置獲取連接等待超時的時間,單位毫秒,缺省啓用公平鎖,併發效率會有所下降
      maxWait: 60000
      # 配置間隔多久才進行一次檢測,檢測需要關閉的空閒連接,單位是毫秒
      timeBetweenEvictionRunsMillis: 60000
      # 配置一個連接在池中最小生存的時間,單位是毫秒
      minEvictableIdleTimeMillis: 300000
      # 用來檢測連接是否有效的sql,要求是一個查詢語句。
      # 如果validationQuery爲null,testOnBorrow、testOnReturn、testWhileIdle都不會起作用
      validationQuery: SELECT 1 FROM DUAL
      # 建議配置爲true,不影響性能,並且保證安全性。
      # 申請連接的時候檢測,如果空閒時間大於timeBetweenEvictionRunsMillis,執行validationQuery檢測連接是否有效。
      testWhileIdle: true
      # 申請連接時執行validationQuery檢測連接是否有效,做了這個配置會降低性能
      testOnBorrow: false
      # 歸還連接時執行validationQuery檢測連接是否有效,做了這個配置會降低性能
      testOnReturn: false
      # 打開PSCache,並且指定每個連接上PSCache的大小
      poolPreparedStatements: true
      maxPoolPreparedStatementPerConnectionSize: 20
      # 通過別名的方式配置擴展插件,多個英文逗號分隔,常用的插件有: 
      # 監控統計用的filter:stat
      # 日誌用的filter:log4j
      # 防禦sql注入的filter:wall
      filters: stat,wall,log4j
      # 通過connectProperties屬性來打開mergeSql功能;慢SQL記錄
      connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
      # 合併多個DruidDataSource的監控數據
      useGlobalDataSourceStat: true

jdbc屬性:

注: https://blog.csdn.net/anglesice/article/details/56049880

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章