1. 程式人生 > >spring-boot application.properties配置詳情之DataSource

spring-boot application.properties配置詳情之DataSource

<一>,DataSource之資料庫常用配置(mybatis):一個簡單的配置

#在連線池裡的連線返回給呼叫者或連線池時,要執行的驗證 SQL 查詢
spring.datasource.validation-query=SELECT 1
#驅動的全限定類名。預設根據 URL 自動檢測。
spring.datasource.driverClassName=###
#資料庫的 JDBC URL
spring.datasource.url=###?useUnicode=true&characterEncoding=utf-8&autoReconnect=true
#資料庫的登入使用者名稱
spring.datasource.username=###
#資料庫的登入密碼
spring.datasource.password=###
#從連線池中借用連線時是否要進行測試
spring.datasource.test-on-borrow: true
#連線池在等待返回連線時,最長等待多少毫秒再丟擲異常
spring.datasource.max-wait: 10000
#連線池中的最大活躍連線數
spring.datasource.max-active: 15
#在連線空閒時是否要進行測試
spring.datasource.test-while-idle: true
#在將連線歸還到連線池時是否要進行測試
spring.datasource.test-on-return: false
#執行連線驗證的間隔時間,單位為毫秒
spring.datasource.validation-interval: 30000
#在兩次空閒連線驗證、棄用連線清理和空閒池大小調整之間睡眠的毫秒數
spring.datasource.time-between-eviction-runs-millis: 5000
#連線池裡始終應該保持的最小連線數(用於DBCP和Tomcat連線池)
spring.datasource.min-idle: 1
#連線池中的最大空閒連線數
spring.datasource.max-idle: 12
#在連線池啟動時要建立的連線數
spring.datasource.initial-size: 12
#連線在多少秒後應該考慮棄用
spring.datasource.remove-abandoned-timeout: 7200
#被棄用的連線在到達棄用超時後是否應該被移除
spring.datasource.remove-abandoned: true
#連線的預設事務隔離級別
spring.datasource.default-transaction-isolation: 2
#一個空閒連線被空閒連線釋放器(如果存在的話)優雅地釋放前,最短會在連線池裡停 留多少時間。

spring.datasource.min-evictable-idle-time-millis: 30000

<二>,其他datasource詳情配置:

spring.datasource.name 資料來源的名稱
spring.datasource.username 資料庫的登入使用者名稱
spring.datasource.password 資料庫的登入密碼
spring.datasource.url 資料庫的 JDBC URL
spring.datasource.jdbc-url 用來建立連線的 JDBC URL
spring.datasource.driver-class-name JDBC 驅動的全限定類名。預設根據 URL 自動檢測
spring.datasource.pool-name 連線池名稱
spring.datasource.max-active 連線池中的最大活躍連線數
spring.datasource.connection-timeout連線超時(單位毫秒)
spring.datasource.max-age 連線池中連線的最長壽命
spring.datasource.max-idle 連線池中的最大空閒連線數
spring.datasource.max-lifetime 連線池中連線的最長壽命(單位為毫秒)
spring.datasource.max-open-prepared-statements 開啟狀態的 PreparedStatement 的數量上限
spring.datasource.max-wait 連線池在等待返回連線時,最長等待多少毫秒再丟擲異常
spring.datasource.maximum-pool-size 連線池能達到的最大規模,包含空閒連線的數量和使用中的連線數量
spring.datasource.min-evictable-idle-time-millis 一個空閒連線被空閒連線釋放器(如果存在的話)優雅地釋放前,最短會在連線池裡停 留多少時間
spring.datasource.min-idle 連線池裡始終應該保持的最小連線數。(用於 DBCP 和 Tomcat 連線池)
spring.datasource.minimum-idle: HikariCP 試圖在連線池裡維持的最小空閒連線數
spring.datasource.alternate-username-allowed 是否允許其它使用者名稱
spring.datasource.auto-commit 更新操作是否自動提交
spring.datasource.abandon-when-percentage-full 一個百分比形勢的閾值,超過該閾值則關閉並報告被棄用的連線
spring.datasource.catalog 預設的 Catalog 名稱
spring.datasource.commit-on-return 在連線歸還時,連線池是否要提交掛起的事務
spring.datasource.connection-init-sql 在所有新連線建立時都會執行的 SQL 語句,該語句會在連線加入連線池前執行
spring.datasource.connection-init-sqls 在物理連線第一次建立時執行的 SQL 語句列表(用於 DBCP 連線池)
spring.datasource.connection-properties.[key] 設定建立連線時使用的屬性(用於 DBCP 連線池)
spring.datasource.continue-on-error 初始化資料庫時發生錯誤不要終止(預設值: false)
spring.datasource.data 指向資料(資料庫操縱語言,Data Manipulation Language,DML)指令碼資源的引用
spring.datasource.data-source-class-name 用於獲取連線的資料來源的全限定類名
spring.datasource.data-source-jndi 用於獲取連線的資料來源的 JNDI 位置
spring.datasource.data-source-properties.[key] 設定建立資料來源時使用的屬性(用於 Hikari 連線池)
spring.datasource.db-properties 設定建立資料來源時使用的屬性(用於 Tomcat 連線池)
spring.datasource.default-auto-commit 連線上的操作是否自動提交
spring.datasource.default-catalog 連線的預設 Catalog
spring.datasource.default-read-only 連線的預設只讀狀態
spring.datasource.default-transaction-isolation 連線的預設事務隔離級別
spring.datasource.fair-queue 是否以 FIFO 方式返回連線
spring.datasource.health-check-properties.[key] 設定要納入健康檢查的屬性(用於 Hikari 連線池)
spring.datasource.idle-timeout 連線池中的連線能保持閒置狀態的最長時間,單位為毫秒。(預設值: 10 )
spring.datasource.ignore-exception-on-pre-load 初始化資料庫連線池時是否要忽略連線
spring.datasource.init-sql在連線第一次建立時執行的自定義查詢
spring.datasource.initial-size 在連線池啟動時要建立的連線數
spring.datasource.initialization-fail-fast 在連線池建立時,如果達不到最小連線數是否要丟擲異常(預設值: true )
spring.datasource.initialize 使用 data.sql 初始化資料庫(預設值: true )
spring.datasource.isolate-internal-queries 是否要隔離內部請求(預設值: false )
spring.datasource.jdbc-interceptors 一個分號分隔的類名列表,這些類都擴充套件了 JdbcInterceptor 類這些攔截器會插入 java.sql.Connection 象的操作鏈裡(用於 Tomcat 連線池)
spring.datasource.jmx-enabled 開啟 JMX 支援(如果底層連線池提供該功能的話)(預設值: false)
spring.datasource.jndi-name 資料來源的 JNDI 位置。設定了該屬性則忽略類、URL、使用者名稱和密碼屬性
spring.datasource.leak-detection-threshold 用來檢測 Hikari 連線池連線洩露的閾值,單位為毫秒
spring.datasource.log-abandoned 是否針對棄用語句或連線的應用程式程式碼記錄下跟蹤棧用於 DBCP 連線池(預設值: false )
spring.datasource.log-validation-errors 在使用 Tomcat 連線池時是否要記錄驗證錯誤
spring.datasource.login-timeout 連線資料庫的超時時間(單位為秒)
spring.datasource.num-tests-per-eviction-run 空閒物件釋放器執行緒(如果存在的話)每次執行時要檢查的物件數
spring.datasource.platform 在 Schema 資源(schema-${platform}.sql)裡要使用的平臺(預設值: all )
spring.datasource.pool-prepared-statements 是否要將 Statement 放在池裡
spring.datasource.propagate-interrupt-state 對於等待連線的中斷執行緒,是否要傳播中斷狀態
spring.datasource.read-only 在使用 Hikari 連線池時將資料來源設定為只讀
spring.datasource.register-mbeans Hikari 連線池是否要註冊 JMX MBean
spring.datasource.remove-abandoned 被棄用的連線在到達棄用超時後是否應該被移除
spring.datasource.remove-abandoned-timeout 連線在多少秒後應該考慮棄用
spring.datasource.rollback-on-return 在連線歸還連線池時,是否要回滾掛起的事務
spring.datasource.schema Schema(資料定義語言,Data Definition Language,DDL)指令碼資源的引用
spring.datasource.separator SQL 初始化腳本里的語句分割符。(預設值: ; )
spring.datasource.sql-script-encoding SQL 指令碼的編碼
spring.datasource.suspect-timeout 在記錄一個疑似棄用連線前要等待多少秒
spring.datasource.test-on-borrow 從連線池中借用連線時是否要進行測試
spring.datasource.test-on-connect 在建立連線時是否要進行測試
spring.datasource.test-on-return 在將連線歸還到連線池時是否要進行測試
spring.datasource.test-while-idle 在連線空閒時是否要進行測試
spring.datasource.time-between-eviction-runs-millis 在兩次空閒連線驗證、棄用連線清理和空閒池大小調整之間睡眠的毫秒數
spring.datasource.transaction-isolation 在使用 Hikari 連線池時設定預設事務隔離級別
spring.datasource.use-disposable-connection-facade 連線是否要用一個門面(facade)封裝起來,在呼叫了 Connection.close() 後就不能 再使用這個連線了
spring.datasource.use-equals 在比較方法名時是否使用 String.equals() 來代替 == 
spring.datasource.use-lock 在操作連線物件時是否要加鎖
spring.datasource.validation-interval 執行連線驗證的間隔時間,單位為毫秒
spring.datasource.validation-query 在連線池裡的連線返回給呼叫者或連線池時,要執行的驗證 SQL 查詢
spring.datasource.validation-query-timeout 在連線驗證查詢執行失敗前等待的超時時間,單位為秒
spring.datasource.validation-timeout 在連線驗證失敗前等待的超時時間,單位為秒(用於 Hikari 連線池)
spring.datasource.validator-class-name 可選驗證器類的全限定類名,用於執行測試查詢
spring.datasource.xa.data-source-class-name XA 資料來源的全限定類名
spring.datasource.xa.properties 要傳遞給 XA 資料來源的屬性
spring.datasource.allow-pool-suspension 是否允許池暫停(pool suspension)。在開啟池暫停後會有效能會受到一定影響,除非你 真的需要這個功能(例如在冗餘的系統下),否則不要開啟它。該屬性只在使用 Hikari 數 據庫連線池時有用。(預設值: false 。)