Druid关闭监控页面关闭不了的问题及解决

 更新时间:2024年05月27日 08:57:26   作者:weixin_45614626  
这篇文章主要介绍了Druid关闭监控页面关闭不了的问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Druid关闭监控页面关闭不了

项目里连接数据库使用了阿里开源的druid,结果被发现有安全漏洞,可以直接访问到druid的监控界面。

但是奇怪的是,明明在yml文件里配置了关闭,同时allow的访问IP是127.0.0.1,还设置了用户名和密码,但是就是关不了

配置如下:

datasource:
    x-wr:
      driverClassName: com.mysql.jdbc.Driver
      name: mysql
      type: com.alibaba.druid.pool.DruidDataSource
      druid:
        #基本属性
        url: jdbc:mysql://
        username: x_rw
        password: 11111
        filter:
          stat:
            enabled: false #默认值为true,监控sql\慢sql等功能,我们建议修改为false,如果需要打开监控页面或者将慢sql输出到日志中,则修改为true。
          wall:
            enabled: false #默认值为false,sql防火墙,支持过滤sql,如禁止使用delete *等操作。
          slf4j:
            enabled: false #指定使用slf4j日志组件,支持选择将各种操作过程输出到日志中。
          log4j2:
            enabled: false #指定使用log4j2日志组件,支持选择将各种操作过程输出到日志中。
          log4j:
            enabled: false #指定使用log4j日志组件,支持选择将各种操作过程输出到日志中。
          commons-log:
            enabled: false #指定使用commons-log日志组件,支持选择将各种操作过程输出到日志中。
          stat-view-servlet:
            enabled: false #默认值为true,即打开监控页面,但存在泄漏信息的风险,所以修改为false
            login-username: hhhh #配置监控页面登录用户名,启用监控页面后才可用,建议业务方,重新定义,别使用我们的给定值
            login-password: ssdd #配置监控页面登录密码,启用监控页面后才可用,建议业务方,重新定义,别使用我们的给定值
            allow: 127.0.0.1 #配置允许访问监控页面的IP地址
          web-stat-filter:
            enabled: false #默认值为true,统计web关联的监控信息如session/url等,建议修改为false
            session-stat-enable: false #该功能模块代码不完善,特定场景下会诱发异常,非特别需求,建议修改为false
        #配置初始化大小/最小/最大
        initial-size: 1
        min-idle: 1
        max-active: 20
        #获取连接等待超时时间
        max-wait: 60000
        #间隔多久进行一次检测,检测需要关闭的空闲连接
        time-between-eviction-runs-millis: 60000
        #一个连接在池中最小生存的时间
        min-evictable-idle-time-millis: 300000
        validation-query: SELECT 'x'
        test-while-idle: true
        test-on-borrow: false
        test-on-return: false
        #打开PSCache,并指定每个连接上PSCache的大小。oracle设为true,mysql设为false。分库分表较多推荐设置为false
        pool-prepared-statements: false
        max-pool-prepared-statement-per-connection-size: 20
        connection-init-sqls: set names utf8mb4
    x-ro:
      driverClassName: com.mysql.jdbc.Driver
      name: mysql
      type: com.alibaba.druid.pool.DruidDataSource
      druid:
        #基本属性
        url: jdbc:mysql://
        username: x_ro
        password: 00000
        filter:
          stat:
            enabled: false #默认值为true,监控sql\慢sql等功能,我们建议修改为false,如果需要打开监控页面或者将慢sql输出到日志中,则修改为true。
          wall:
            enabled: false #默认值为false,sql防火墙,支持过滤sql,如禁止使用delete *等操作。
          slf4j:
            enabled: false #指定使用slf4j日志组件,支持选择将各种操作过程输出到日志中。
          log4j2:
            enabled: false #指定使用log4j2日志组件,支持选择将各种操作过程输出到日志中。
          log4j:
            enabled: false #指定使用log4j日志组件,支持选择将各种操作过程输出到日志中。
          commons-log:
            enabled: false #指定使用commons-log日志组件,支持选择将各种操作过程输出到日志中。
          stat-view-servlet:
            enabled: false #默认值为true,即打开监控页面,但存在泄漏信息的风险,所以修改为false
            login-username: hhhh #配置监控页面登录用户名,启用监控页面后才可用,建议业务方,重新定义,别使用我们的给定值
            login-password: ssdd #配置监控页面登录密码,启用监控页面后才可用,建议业务方,重新定义,别使用我们的给定值
            allow: 127.0.0.1 #配置允许访问监控页面的IP地址
          web-stat-filter:
            enabled: false #默认值为true,统计web关联的监控信息如session/url等,建议修改为false
            session-stat-enable: false #该功能模块代码不完善,特定场景下会诱发异常,非特别需求,建议修改为false
        #配置初始化大小/最小/最大
        initial-size: 1
        min-idle: 1
        max-active: 20
        #获取连接等待超时时间
        max-wait: 60000
        #间隔多久进行一次检测,检测需要关闭的空闲连接
        time-between-eviction-runs-millis: 60000
        #一个连接在池中最小生存的时间
        min-evictable-idle-time-millis: 300000
        validation-query: SELECT 'x'
        test-while-idle: true
        test-on-borrow: false
        test-on-return: false
        #打开PSCache,并指定每个连接上PSCache的大小。oracle设为true,mysql设为false。分库分表较多推荐设置为false
        pool-prepared-statements: false
        max-pool-prepared-statement-per-connection-size: 20
        connection-init-sqls: set names utf8mb4

试了各种方法都不行,于是上网查了一下,发现确实是个bug(可以参考这篇文章bug)

于是解决方法就只能变成替换成hikari,怎么替换可以看我的文章hikari替换druid

关闭druid监控 实测好用

spring.datasource.druid.filter.config.enabled=false
spring.datasource.druid.web-stat-filter.enabled=false
spring.datasource.druid.stat-view-servlet.enabled=false

注释掉 public class DruidConfiguration 类

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java中List数组用逗号分隔开转成字符串2种方法

    java中List数组用逗号分隔开转成字符串2种方法

    在我们日常开发中,在前后端交互的时候会遇到多个id或其他字段存放到一个字段中,这时我们会遇到一个List(集合)---->String(单个字段),这篇文章主要给大家介绍了关于java中List数组用逗号分隔开转成字符串的2种方法,需要的朋友可以参考下
    2023-10-10
  • MyBatis的嵌套查询解析

    MyBatis的嵌套查询解析

    本篇文章主要介绍了MyBatis的嵌套查询解析,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • Mybatis中SQL的执行过程详解

    Mybatis中SQL的执行过程详解

    MyBatis框架通过映射文件或注解将Java代码中的方法与数据库操作进行映射,执行过程包括SQL解析、参数绑定、SQL预编译、执行、结果映射、事务处理、缓存处理和日志记录
    2024-12-12
  • Spring MVC 请求处理流程步骤详解

    Spring MVC 请求处理流程步骤详解

    这篇文章主要介绍了Spring MVC 请求处理流程详解,本文分步骤结合实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧
    2025-04-04
  • Java 8 Optional解决空指针问题全面解析

    Java 8 Optional解决空指针问题全面解析

    在Java编程中,空指针异常(NullPointerException)是一个常见的错误,经常会导致程序的崩溃或不可预料的行为,下面通过本文给大家介绍Java8 Optional解决空指针问题,感兴趣的朋友跟随小编一起看看吧
    2025-10-10
  • java中brew安装rabbitmq以及简单实例

    java中brew安装rabbitmq以及简单实例

    RabbitMQ是基于AMQP协议,由Erlang语言开发的开源消息队列系统,广泛应用于分布式系统中,用于应用程序间的消息传递,它支持多种交换机类型,如直连交换机、扇形交换机和主题交换机等,能够满足不同的消息路由需求
    2024-10-10
  • springBoot项目集成quartz开发定时任务案例及注意事项

    springBoot项目集成quartz开发定时任务案例及注意事项

    这篇文章主要介绍了springBoot项目集成quartz开发定时任务案例及注意事项,这些功能的主要接口(API)是Scheduler接口。它提供了简单的操作,例如:将任务纳入日程或者从日程中取消,开始/停止/暂停日程进度,需要的朋友可以参考下
    2022-06-06
  • 配置Ant执行Jmeter脚本过程详解

    配置Ant执行Jmeter脚本过程详解

    这篇文章主要介绍了配置Ant执行Jmeter脚本过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • 数据定位在java购物车系统中的应用

    数据定位在java购物车系统中的应用

    实现"加入购物车"功能,数据定位至关重要,它通过用户ID和商品ID等标识符实现快速查询和数据一致性,主键、外键和联合索引等数据库技术,以及Redis缓存和并发控制策略如乐观锁或分布式锁,共同保障了购物车系统的查询效率和数据安全,这些机制对高并发和大数据量的场景尤为重要
    2024-10-10
  • MyBatis中XML映射器的实现

    MyBatis中XML映射器的实现

    MyBatis的真正强大在于它的语句映射,映射器的XML文件就显得相对简单,本文主要介绍了MyBatis中XML映射器的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01

最新评论