当前位置:   article > 正文

数据库连接池druid参数详解_druid连接池配置

druid连接池配置
  1. spring:
  2. datasource:
  3. druid:
  4. # 指定数据源类型为DruidDataSource
  5. type: com.alibaba.druid.pool.DruidDataSource
  6. # 数据库连接URL
  7. url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai&useSSL=false
  8. # 数据库用户名
  9. username: root
  10. # 数据库密码
  11. password: "xx123!@#"
  12. # 连接池初始化时创建的连接数
  13. initialSize: 5
  14. # 连接池中最大连接数
  15. maxActive: 50
  16. # 连接池中最小空闲连接数
  17. minIdle: 5
  18. # 连接池中最大空闲连接数
  19. maxIdle: 10
  20. # 获取连接时的最大等待时间(毫秒)
  21. maxWait: 60000
  22. # 间隔多久检测一次空闲连接(毫秒)
  23. timeBetweenEvictionRunsMillis: 60000
  24. # 连接池中连接最小空闲时间(毫秒)
  25. minEvictableIdleTimeMillis: 300000
  26. # 用于检测连接是否有效的SQL语句
  27. validationQuery: SELECT 1
  28. # 是否开启空闲连接的检测
  29. testWhileIdle: true
  30. # 是否开启连接的检测功能,在获取连接时检测连接是否有效
  31. testOnBorrow: false
  32. # 是否开启连接的检测功能,在归还连接时检测连接是否有效
  33. testOnReturn: false
  34. # 是否缓存PreparedStatement对象
  35. poolPreparedStatements: true
  36. # 缓存PreparedStatement对象的最大数量
  37. maxPoolPreparedStatementPerConnectionSize: 20
  38. # 配置监控统计用的filter,允许监控统计
  39. filters: stat
  40. # 配置扩展属性,用于监控统计分析SQL性能等
  41. connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000

1、type: 数据源类型,这里使用了Druid连接池的类型。

  1. 注意事项:使用Druid连接池的时候需要添加Druid连接池的依赖
  2. <dependency>
  3. <groupId>com.alibaba</groupId>
  4. <artifactId>druid-spring-boot-starter</artifactId>
  5. <version>${druid.version}</version>
  6. </dependency>

2、url: 数据库连接的URL。

注意事项:需要根据实际情况修改URL。

3、username: 数据库用户名。

4、password: 数据库密码

包含一些特殊字符的时候需要加引号。

5、initialSize: 连接池初始化时创建的连接数。

需要根据实际情况设置连接数。连接池创建连接时,会创建initialSize个连接,以确保应用程序在启动时可以立即获取到数据库连接。

6. maxActive: 连接池中最大连接数。需要根据实际情况设置最大连接数。如果连接池中连接数达到maxActive,则应用程序获取连接的请求将被阻塞,直到有连接被释放。

7. minIdle: 连接池中最小空闲连接数。 需要根据实际情况设置最小空闲连接数。如果连接池中空闲连接数少于minIdle,连接池会创建新的连接以达到minIdle。

8. maxIdle: 连接池中最大空闲连接数。 需要根据实际情况设置最大空闲连接数。如果连接池中空闲连接数超过maxIdle,连接池会关闭多余的连接以避免占用过多的资源。

9. maxWait: 获取连接时的最大等待时间。需要根据实际情况设置最大等待时间。如果连接池中没有可用连接且已经达到最大连接数,则应用程序获取连接的请求将被阻塞,最多等待maxWait毫秒。

10. timeBetweenEvictionRunsMillis: 间隔多久检测一次空闲连接(毫秒)。 需要根据实际情况设置检测间隔时间。连接池会定期检查空闲连接的状态,如果空闲时间超过minEvictableIdleTimeMillis,则将连接关闭。

11. minEvictableIdleTimeMillis: 连接池中连接最小空闲时间(毫秒)。 需要根据实际情况设置最小空闲时间。连接池会定期检查空闲连接的状态,如果空闲时间超过minEvictableIdleTimeMillis,则将连接关闭。

12. validationQuery: 用于检测连接是否有效的SQL语句。 需要根据实际情况设置SQL语句。连接池会使用这个SQL语句来检测连接是否有效。

13. testWhileIdle: 是否开启空闲连接的检测。 需要根据实际情况设置是否开启空闲连接的检测。如果开启,连接池会定期检查空闲连接的状态。

14. testOnBorrow: 是否开启连接的检测功能,在获取连接时检测连接是否有效。
需要根据实际情况设置是否开启连接的检测功能。如果开启,连接池在获取连接时会检查连接是否有效。

15. testOnReturn: 是否开启连接的检测功能,在归还连接时检测连接是否有效。 需要根据实际情况设置是否开启连接的检测功能。如果开启,连接池在归还连接时会检查连接是否有效。

16. poolPreparedStatements: 是否缓存PreparedStatement对象。需要根据实际情况设置是否缓存PreparedStatement对象。如果开启,连接池会缓存PreparedStatement对象以提高性能。

17. maxPoolPreparedStatementPerConnectionSize: 缓存PreparedStatement对象的最大数量。 需要根据实际情况设置缓存的最大数量。如果开启了缓存PreparedStatement对象,连接池会限制每个连接缓存的最大数量。

maxPoolPreparedStatementPerConnectionSize是Druid连接池的一个配置项,用于配置连接池中缓存的PreparedStatement的最大数量。PreparedStatement是预编译的SQL语句,可以提高SQL执行的效率和安全性,避免SQL注入等安全问题。在使用Druid连接池时,当开启了缓存PreparedStatement功能时,每个连接都会缓存一定数量的PreparedStatement对象,以便在需要执行SQL语句时能够快速获取。而maxPoolPreparedStatementPerConnectionSize就是用于配置每个连接中缓存的PreparedStatement的最大数量。需要注意的是,缓存PreparedStatement虽然可以提高SQL执行的效率,但同时也会占用一定的内存资源。因此,需要根据实际情况进行合理配置。默认情况下,该属性的值为10。在上面的配置中,maxPoolPreparedStatementPerConnectionSize: 20表示将每个连接中缓存的PreparedStatement的最大数量设置为20个。

18. filters: 配置监控统计用的filter,允许监控统计。 如果要使用Druid的监控功能,需要配置此项。stat表示使用Druid的监控功能。

19. connectionProperties: 配置扩展属性,用于监控统计分析SQL性能等。 druid.stat.mergeSql和druid.stat.slowSqlMillis是两个与SQL监控有关的属性。
druid.stat.mergeSql用于配置是否合并SQL。当该属性设置为true时,Druid会将相同的SQL语句合并为一条,以节省SQL统计的开销和提高统计精度。默认情况下,该属性的值为false。
druid.stat.slowSqlMillis用于配置SQL执行的时间阈值,单位为毫秒。当一条SQL执行的时间超过该阈值时,Druid会将该SQL记录到慢SQL列表中,以便进行分析和优化。默认情况下,该属性的值为3000毫秒。
在上面的配置中,druid.stat.mergeSql=true表示启用SQL合并功能,druid.stat.slowSqlMillis=5000表示将SQL执行的时间阈值设置为5000毫秒。这些属性的具体含义和配置方法,可以参考Druid的官方文档。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/355094
推荐阅读
相关标签
  

闽ICP备14008679号