SpringBoot【集成 Druid 01】使用 druid-spring-boot-starter 实现监控数据库

78 阅读2分钟

What

Druid是一个JDBC组件,它包括三部分: • DruidDriver 代理Driver,能够提供基于Filter-Chain模式的插件体系。 • DruidDataSource 高效可管理的数据库连接池。 • SQLParser

Why

• 可以监控数据库访问性能,Druid内置提供了一个功能强大的StatFilter插件,能够详细统计SQL的执行性能,这对于线上分析数据库访问性能有帮助。 • 替换DBCP和C3P0。Druid提供了一个高效、功能强大、可扩展性好的数据库连接池。 • 数据库密码加密。直接把数据库密码写在配置文件中,这是不好的行为,容易导致安全问题。DruidDruiver和DruidDataSource都支持PasswordCallback。 • SQL执行日志,Druid提供了不同的LogFilter,能够支持Common-Logging、Log4j和JdkLog,你可以按需要选择相应的LogFilter,监控你应用的数据库访问情况。 • 扩展JDBC,如果你要对JDBC层有编程的需求,可以通过Druid提供的Filter-Chain机制,很方便编写JDBC层的扩展插件。

USE

1.依赖(只贴出核心依赖)

<!--核心依赖-->
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>druid-spring-boot-starter</artifactId>
	<version>1.1.10</version>
</dependency>

2.配置(只贴出核心配置)

spring:

  datasource:
    url: jdbc:postgresql://xxx.xx.xxx.xxx:2345/gpdb
    username: admin
    password: admin
    driver-class-name: org.postgresql.Driver
    type: com.alibaba.druid.pool.DruidDataSource

    druid:
      initial-size: 3
      min-idle: 3
      max-active: 10
      max-wait: 60000
      stat-view-servlet:
        login-username: admin
        login-password: admin
      filter:
        stat:
          log-slow-sql: true
          slow-sql-millis: 1

3.druid Web监控 http://localhost:8080/druid/login.html 登录后可查询监控信息。 在这里插入图片描述 在这里插入图片描述

小小的总结

本文介绍了如何使用druid-spring-boot-starter实现数据库监控。Druid是一个包含代理Driver、高效连接池和SQL解析器的JDBC组件,具有监控性能、替换传统连接池、密码加密、SQL日志记录和扩展JDBC等功能。配置步骤包括添加核心依赖、设置数据源参数(如连接数、慢SQL阈值等),配置完成后可通过/druid/login.html访问监控页面查看SQL执行情况。Druid提供了比DBCP/C3P0更强大的连接池管理能力,并能有效保障数据库访问安全。