springboot資料連線池

2021-09-29 03:19:20 字數 1520 閱讀 2788

目錄

預設資料來源 hikaridatasource

配置檔案

mysql 超時時間設定

spring:

datasource:

driver-class-name: com.mysql.jdbc.driver

username: $

password: $

url: jdbc:mysql://$/$?characterencoding=utf-8&usessl=false

type: com.zaxxer.hikari.hikaridatasource #資料來源型別

hikari:

pool-name: datebookhikaricp #連線池名稱。預設hikaripool-1

auto-commit: true

minimum-idle: 5 # 允許的最小空閒數。預設值10。小於0或大於maximum-pool-size,都會重置為maximum-pool-size

maximum-pool-size: 15 # 連線池最大連線數。預設值10。小於等於0會被重置為預設值10;大於零小於1會被重置為minimum-idle的值

idle-timeout: 30000 # 空閒超時,空閒超時的連線會被關閉,直到超時的空閒連線數達到 minimum-idle的值。預設值600000ms(10分鐘)。大於等於max-lifetime且max-lifetime>0,會被重置為0;不等於0且小於10秒,會被重置為10秒。

max-lifetime: 180000 # 最長生命週期,使用中的連線永遠不會退役,只有當它關閉時才會被刪除。預設30分鐘。不等於0且小於30秒,會被重置為預設值30分鐘.設定應該比mysql設定的超時時間短

connection-timeout: 30000 # 連線的超時時間。預設值30秒。小於250毫秒,否則被重置為預設值30秒

connection-test-query: select 1 # 測試連線是否可用的query語句。在oracle是select 1 from dual

1、重啟一下mysql永久生效

編輯 /etc/my.cnf,在mysqld 下 新增 timeout引數(s)

【mysqld】

wait_timeout=2100

interactive_timeout=2100

2、及時生效,重啟後失效

show global variables like 'wait_timeout';

show global variables like 'interactive_timeout';

set global wait_timeout=2100; //伺服器關閉非互動連線之前等待活動的秒數。

set global interactive_timeout=2100; // 伺服器關閉互動式連線前等待活動的秒數。

配置連線池內連線的生存週期小於mysql設定的wait_timeout 的值。 

參考:

spring boot 配置druid連線池

以下是開源中國上對druid的介紹 druid是乙個jdbc元件,它包括三部分 druiddriver driver,能夠提供基於filter chain模式的外掛程式體系。druiddatasource 高效可管理的資料庫連線池。sqlparser druid可以做什麼?1 可以監控資料庫訪問效能...

Spring Boot配置druid連線池

1.引入包 com.alibaba druid 1.0.28 type com.alibaba.druid.pool.druiddatasource filters stat,wall,log4j stat放到wall前面則統計攔截的時間,stat放在wall後面則不統計攔截的時間 注意 不要同時配...

Springboot 配置redis連線池

springboot2.0預設採用lettuce客戶端來連線redis服務端的.預設是不使用連線池的,只有配置 redis.lettuce.pool下的屬性的時候才可以使用到redis連線池。匯入依賴 org.springframework.boot spring boot starter data...