Spring 多数据源配置

x33g5p2x  于2022-03-17 转载在 Spring  
字(6.5k)|赞(0)|评价(0)|浏览(369)

一 配置

  1. spring.datasource.primary.url=jdbc\:mysql\://localhost\:3306/test?useUnicode\=true&characterEncoding\=utf-8
  2. spring.datasource.primary.username=test
  3. spring.datasource.primary.password=123456
  4. spring.datasource.primary.driver-class-name=com.mysql.jdbc.Driver
  5. #验证连接的有效性
  6. spring.datasource.primary.test-while-idle=true
  7. #获取连接时候验证,会影响性能
  8. spring.datasource.primary.test-on-borrow=false
  9. #在连接归还到连接池时是否测试该连接
  10. spring.datasource.primary.test-on-return=false
  11. spring.datasource.primary.validation-query=SELECT 1 FROM DUAL
  12. #空闲连接回收的时间间隔,与test-while-idle一起使用,设置5分钟
  13. spring.datasource.primary.time-between-eviction-runs-millis=300000
  14. #连接池空闲连接的有效时间 ,设置30分钟
  15. spring.datasource.primary.min-evictable-idle-time-millis=1800000
  16. spring.datasource.primary.initial-size=5
  17. #指定连接池中最大的活跃连接数.
  18. spring.datasource.primary.max-active=50
  19. #指定连接池等待连接返回的最大等待时间,毫秒单位.
  20. spring.datasource.primary.max-wait=60000
  21. #指定必须保持连接的最小值
  22. spring.datasource.primary.min-idle=5
  23. spring.datasource.secondary.url=jdbc\:mysql\://localhost\:3306/test2?useUnicode\=true&characterEncoding\=utf-8
  24. spring.datasource.secondary.username=test
  25. spring.datasource.secondary.password=123456
  26. spring.datasource.secondary.driver-class-name=com.mysql.jdbc.Driver
  27. #验证连接的有效性
  28. spring.datasource.secondary.test-while-idle=true
  29. #获取连接时候验证,会影响性能
  30. spring.datasource.secondary.test-on-borrow=false
  31. #在连接归还到连接池时是否测试该连接
  32. spring.datasource.secondary.test-on-return=false
  33. spring.datasource.secondary.validation-query=SELECT 1 FROM DUAL
  34. #空闲连接回收的时间间隔,与test-while-idle一起使用,设置5分钟
  35. spring.datasource.secondary.time-between-eviction-runs-millis=300000
  36. #连接池空闲连接的有效时间 ,设置30分钟
  37. spring.datasource.secondary.min-evictable-idle-time-millis=1800000
  38. spring.datasource.secondary.initial-size=5
  39. #指定连接池中最大的活跃连接数.
  40. spring.datasource.secondary.max-active=50
  41. #指定连接池等待连接返回的最大等待时间,毫秒单位.
  42. spring.datasource.secondary.max-wait=60000
  43. #指定必须保持连接的最小值
  44. spring.datasource.secondary.min-idle=5

二 说明

  1. spring.dao.exceptiontranslation.enabled 是否开启PersistenceExceptionTranslationPostProcessor,默认为true
  2. spring.datasource.abandon-when-percentage-full 设定超时被废弃的连接占到多少比例时要被关闭或上报
  3. spring.datasource.allow-pool-suspension 使用Hikari pool时,是否允许连接池暂停,默认为: false
  4. spring.datasource.alternate-username-allowed 是否允许替代的用户名.
  5. spring.datasource.auto-commit 指定updates是否自动提交.
  6. spring.datasource.catalog 指定默认的catalog.
  7. spring.datasource.commit-on-return 设置当连接被归还时,是否要提交所有还未完成的事务
  8. spring.datasource.connection-init-sql 指定连接被创建,再被添加到连接池之前执行的sql.
  9. spring.datasource.connection-init-sqls 使用DBCP connection pool时,指定初始化时要执行的sql
  10. spring.datasource.connection-properties .[key]在使用DBCP connection pool时指定要配置的属性
  11. spring.datasource.connection-test-query 指定校验连接合法性执行的sql语句
  12. spring.datasource.connection-timeout 指定连接的超时时间,毫秒单位.
  13. spring.datasource.continue-on-error 在初始化数据库时,遇到错误是否继续,默认false
  14. spring.datasource.data 指定Data (DML)脚本
  15. spring.datasource.data-source-class-name 指定数据源的全限定名.
  16. spring.datasource.data-source-jndi 指定jndi的地址
  17. spring.datasource.data-source-properties .[key]使用Hikari connection pool时,指定要设置的属性
  18. spring.datasource.db-properties 使用Tomcat connection pool,指定要设置的属性
  19. spring.datasource.default-auto-commit 是否自动提交.
  20. spring.datasource.default-catalog 指定连接默认的catalog.
  21. spring.datasource.default-read-only 是否设置默认连接只读.
  22. spring.datasource.default-transaction-isolation 指定连接的事务的默认隔离级别.
  23. spring.datasource.driver-class-name 指定driver的类名,默认从jdbc url中自动探测.
  24. spring.datasource.fair-queue 是否采用FIFO返回连接.
  25. spring.datasource.health-check-properties .[key]使用Hikari connection pool时,在心跳检查时传递的属性
  26. spring.datasource.idle-timeout 指定连接多久没被使用时,被设置为空闲,默认为10ms
  27. spring.datasource.ignore-exception-on-pre-load 当初始化连接池时,是否忽略异常.
  28. spring.datasource.init-sql 当连接创建时,执行的sql
  29. spring.datasource.initial-size 指定启动连接池时,初始建立的连接数量
  30. spring.datasource.initialization-fail-fast 当创建连接池时,没法创建指定最小连接数量是否抛异常
  31. spring.datasource.initialize 指定初始化数据源,是否用data.sql来初始化,默认: true
  32. spring.datasource.isolate-internal-queries 指定内部查询是否要被隔离,默认为false
  33. spring.datasource.jdbc-interceptors 使用Tomcat connection pool时,指定jdbc拦截器,分号分隔
  34. spring.datasource.jdbc-url 指定JDBC URL.
  35. spring.datasource.jmx-enabled 是否开启JMX,默认为: false
  36. spring.datasource.jndi-name 指定jndi的名称.
  37. spring.datasource.leak-detection-threshold 使用Hikari connection pool时,多少毫秒检测一次连接泄露.
  38. spring.datasource.log-abandoned 使用DBCP connection pool,是否追踪废弃statement或连接,默认为: false
  39. spring.datasource.log-validation-errors 当使用Tomcat connection pool是否打印校验错误.
  40. spring.datasource.login-timeout 指定连接数据库的超时时间.
  41. spring.datasource.max-active 指定连接池中最大的活跃连接数.
  42. spring.datasource.max-age 指定连接池中连接的最大年龄
  43. spring.datasource.max-idle 指定连接池最大的空闲连接数量.
  44. spring.datasource.max-lifetime 指定连接池中连接的最大生存时间,毫秒单位.
  45. spring.datasource.max-open-prepared-statements 指定最大的打开的prepared statements数量.
  46. spring.datasource.max-wait 指定连接池等待连接返回的最大等待时间,毫秒单位.
  47. spring.datasource.maximum-pool-size 指定连接池最大的连接数,包括使用中的和空闲的连接.
  48. spring.datasource.min-evictable-idle-time-millis 指定一个空闲连接最少空闲多久后可被清除.
  49. spring.datasource.min-idle 指定必须保持连接的最小值(For DBCP and Tomcat connection pools)
  50. spring.datasource.minimum-idle 指定连接维护的最小空闲连接数,当使用HikariCP时指定.
  51. spring.datasource.name 指定数据源名.
  52. spring.datasource.num-tests-per-eviction-run 指定运行每个idle object evictor线程时的对象数量
  53. spring.datasource.password 指定数据库密码.
  54. spring.datasource.platform 指定schema要使用的Platform(schema-${platform}.sql),默认为: all
  55. spring.datasource.pool-name 指定连接池名字.
  56. spring.datasource.pool-prepared-statements 指定是否池化statements.
  57. spring.datasource.propagate-interrupt-state 在等待连接时,如果线程被中断,是否传播中断状态.
  58. spring.datasource.read-only 当使用Hikari connection pool时,是否标记数据源只读
  59. spring.datasource.register-mbeans 指定Hikari connection pool是否注册JMX MBeans.
  60. spring.datasource.remove-abandoned 指定当连接超过废弃超时时间时,是否立刻删除该连接.
  61. spring.datasource.remove-abandoned-timeout 指定连接应该被废弃的时间.
  62. spring.datasource.rollback-on-return 在归还连接时,是否回滚等待中的事务.
  63. spring.datasource.schema 指定Schema (DDL)脚本.
  64. spring.datasource.separator 指定初始化脚本的语句分隔符,默认: ;
  65. spring.datasource.sql-script-encoding 指定SQL scripts编码.
  66. spring.datasource.suspect-timeout 指定打印废弃连接前的超时时间.
  67. spring.datasource.test-on-borrow 当从连接池借用连接时,是否测试该连接.
  68. spring.datasource.test-on-connect 创建时,是否测试连接
  69. spring.datasource.test-on-return 在连接归还到连接池时是否测试该连接.
  70. spring.datasource.test-while-idle 当连接空闲时,是否执行连接测试.
  71. spring.datasource.time-between-eviction-runs-millis 指定空闲连接检查、废弃连接清理、空闲连接池大小调整之间的操作时间间隔
  72. spring.datasource.transaction-isolation 指定事务隔离级别,使用Hikari connection pool时指定
  73. spring.datasource.url 指定JDBC URL.
  74. spring.datasource.use-disposable-connection-facade 是否对连接进行包装,防止连接关闭之后被使用.
  75. spring.datasource.use-equals 比较方法名时是否使用String.equals()替换==.
  76. spring.datasource.use-lock 是否对连接操作加锁
  77. spring.datasource.username 指定数据库名.
  78. spring.datasource.validation-interval 指定多少ms执行一次连接校验.
  79. spring.datasource.validation-query 指定获取连接时连接校验的sql查询语句.
  80. spring.datasource.validation-query-timeout 指定连接校验查询的超时时间.
  81. spring.datasource.validation-timeout 设定连接校验的超时时间,当使用Hikari connection pool时指定
  82. spring.datasource.validator-class-name 用来测试查询的validator全限定名.
  83. spring.datasource.xa.data-source-class-name 指定数据源的全限定名.
  84. spring.datasource.xa.properties 指定传递给XA data source的属性

相关文章