亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

mysql連接池druid監(jiān)控配置小結

 更新時間:2025年09月05日 10:11:19   作者:abcnull  
Druid連接池提供慢SQL、連接泄漏等監(jiān)控功能,適用于Java+MySQL項目,本文就來詳細的介紹一下mysql連接池druid監(jiān)控配置,感興趣的可以了解一下

前置

連接池有很多類型,比如 c3p0,比如 hikariCP,比如 druid。c3p0 一些歷史項目可能用的比較多,hikariCP 需要高性能的項目比較多,druid 性能也很好,而且還提供連接池的監(jiān)控面板

現(xiàn)在你使用 java,使用 mysql,配置好了基本的 mysql 數(shù)據(jù)庫的驅動配置,配置好了 druid 連接池基本內(nèi)容

你想要監(jiān)控 mysql 連接池的慢 sql 情況,連接泄漏等詳細情況,可以考慮使用 druid 提供的監(jiān)控能力

模塊功能描述
數(shù)據(jù)源查看數(shù)據(jù)庫連接池的狀態(tài)(活躍連接數(shù)、空閑連接數(shù)、連接等待時間等)。
SQL 監(jiān)控顯示 SQL 執(zhí)行次數(shù)、總耗時、慢查詢(默認慢查詢閾值為 1000ms)。
Session 統(tǒng)計監(jiān)控用戶的會話信息(如最大并發(fā)連接數(shù)、會話超時時間等)。
Web 統(tǒng)計查看 HTTP 請求的統(tǒng)計信息(如請求次數(shù)、平均響應時間、失敗次數(shù)等)。
系統(tǒng)信息顯示 JVM 內(nèi)存、線程、GC 狀態(tài)等系統(tǒng)級監(jiān)控數(shù)據(jù)。

依賴

如果你配置了 druid 的一些基本連接池的內(nèi)容,這里不贅述,那么你肯定引入了 druid 的依賴了

啟用配置

Springboot 配置
如果你是 Springboot 項目,在 application.yml 中配置即可

其中 stat-view-servlet 表示承接 /druid/ 請求的 servlet,web-stat-filter 表示濾過哪些請求以及排查哪些請求

spring:
  datasource:
    druid:
      # 啟用監(jiān)控頁面
      stat-view-servlet:
        enabled: true
        url-pattern: /druid/*
        login-username: admin       # 登錄用戶名
        login-password: admin123    # 登錄密碼
        reset-enable: false         # 是否允許重置數(shù)據(jù)(生產(chǎn)環(huán)境建議關閉)
      web-stat-filter:
        enabled: true
        url-pattern: /*             # 監(jiān)控所有請求
        exclusions: "*.js,*.css,/druid/*"  # 排除靜態(tài)資源

只用了 mybatis 沒用 spring
如果你不是 springboot 項目,你只用了 mybatis:
mybatis-config.xml 中配置好 druid 連接池的基本連接信息后,多配置上:

<property name="filters" value="stat,wall" /> <!-- 啟用監(jiān)控和防御SQL注入 -->

然后你的項目還是老的 WEB-INF 項目,其中有 web.xml 文件,那么其中要配置 servlet 和 filter

<!-- Druid 監(jiān)控 Servlet -->
    <servlet>
        <servlet-name>DruidStatView</servlet-name>
        <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
        <init-param>
            <param-name>loginUsername</param-name>
            <param-value>admin</param-value> <!-- 登錄用戶名 -->
        </init-param>
        <init-param>
            <param-name>loginPassword</param-name>
            <param-value>admin123</param-value> <!-- 登錄密碼 -->
        </init-param>
        <init-param> <!-- 允許訪問的IP(可選) -->
            <param-name>allow</param-name>
            <param-value>127.0.0.1</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>DruidStatView</servlet-name>
        <url-pattern>/druid/*</url-pattern>
    </servlet-mapping>

    <!-- Druid Web 監(jiān)控 Filter -->
    <filter>
        <filter-name>DruidWebStatFilter</filter-name>
        <filter-class>com.alibaba.druid.support.http.WebStatFilter</filter-class>
        <init-param>
            <param-name>exclusions</param-name>
            <param-value>*.js,*.css,/druid/*</param-value> <!-- 排除靜態(tài)資源 -->
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>DruidWebStatFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

然后如果項目使用 Servlet 3.0+ 并支持注解,可以通過 Java 配置類注冊來代替上方的在 web.xml 中的配置:你可以寫一個 DruidWebConfig 類來繼承 ServletContextListener,再重寫其中 contextInitialized 方法,其中你可以注冊 StatViewServlet 和 WebStatFilter,然后再 web.xml 配置一個監(jiān)聽即可

<listener>
    <listener-class>com.test.config.DruidWebConfig</listener-class>
</listener>

訪問監(jiān)控

你本地啟動項目的話,你可以瀏覽器訪問:

http://localhost:8080/druid

如果你設置了 your-app-context(Web 應用部署到服務器上的應用上下文路徑),則你需要訪問

http://localhost:8080/your-app-context/druid

一些問題

頁面 404:一般是 stat-view-servlet 或者 web-stat-filter 沒配置對,一些常見的比如其他 filter 把這個請求攔截了

到此這篇關于mysql連接池druid監(jiān)控配置小結的文章就介紹到這了,更多相關mysql連接池druid監(jiān)控配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • MYSQL IN 與 EXISTS 的優(yōu)化示例介紹

    MYSQL IN 與 EXISTS 的優(yōu)化示例介紹

    當B表的數(shù)據(jù)集必須小于A表的數(shù)據(jù)集時,用in優(yōu)于exists,當A表的數(shù)據(jù)集系小于B表的數(shù)據(jù)集時,用exists優(yōu)于in
    2014-08-08
  • php 不能連接數(shù)據(jù)庫 php error Can''t connect to local MySQL server

    php 不能連接數(shù)據(jù)庫 php error Can''t connect to local MySQL server

    php 不能連接數(shù)據(jù)庫 php error Can't connect to local MySQL server through socket '/tmp/mysql.sock'
    2011-05-05
  • mysql查詢鎖表方式

    mysql查詢鎖表方式

    在MySQL中,查詢鎖表可以通過多個命令實現(xiàn),如show?engine?innodb?status、show?processlist等,用以檢測和解決表鎖問題,首先通過show?engine?innodb?status查看鎖表情況,接著利用show?processlist找出長時間占用的SQL語句
    2024-09-09
  • 深入mysql慢查詢設置的詳解

    深入mysql慢查詢設置的詳解

    本篇文章是對mysql慢查詢設置進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06
  • mysql多表聯(lián)合查詢操作實例分析

    mysql多表聯(lián)合查詢操作實例分析

    這篇文章主要介紹了mysql多表聯(lián)合查詢操作,結合實例形式分析了mysql多表聯(lián)合查詢的語法、功能、相關操作技巧與注意事項,需要的朋友可以參考下
    2019-04-04
  • windows下MySQL 5.7.3.0安裝配置圖解教程(安裝版)

    windows下MySQL 5.7.3.0安裝配置圖解教程(安裝版)

    這篇文章主要介紹了windows下MySQL 5.7.3.0安裝配置圖解教程(安裝版),需要的朋友可以參考下
    2016-04-04
  • MySQL使用命令行備份數(shù)據(jù)的方法詳解

    MySQL使用命令行備份數(shù)據(jù)的方法詳解

    由于長期使用測試環(huán)境的數(shù)據(jù)庫,時不時會有臟數(shù)據(jù)刪除不干凈,對此很需要一個實時將生產(chǎn)庫的數(shù)據(jù)定期備份一份,防止生產(chǎn)庫中會有臟數(shù)據(jù)進來,所以本文給大家介紹了MySQL使用命令行備份數(shù)據(jù)的方法,需要的朋友可以參考下
    2024-02-02
  • MySQL關于ERROR 1290 (HY000)報錯解決方法

    MySQL關于ERROR 1290 (HY000)報錯解決方法

    在本篇文章里小編給大家整理的是關于MySQL關于ERROR 1290 (HY000)報錯的解決方法,有興趣的朋友們可以參考下。
    2019-09-09
  • MySQL修改密碼不成功(無效)的解決方案

    MySQL修改密碼不成功(無效)的解決方案

    這篇文章主要介紹了MySQL修改密碼不成功(無效)的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 詳解MySQL批量入庫的幾種方式

    詳解MySQL批量入庫的幾種方式

    本文主要介紹了詳解MySQL批量入庫的幾種方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02

最新評論