Prometheus+Grafana監控mysql

1、簡述

????????使用 Prometheus 結合 Grafana 監控 MySQL 是一套成熟且廣泛應用的方案,能實現對 MySQL 性能、狀態等指標的實時采集、存儲、可視化及告警。

2、整體架構說明

  • Prometheus:負責定時從 MySQL 采集監控指標(需借助 Exporter),并存儲在時序數據庫中。
  • MySQL Exporter:部署在 MySQL 服務器或可訪問 MySQL 的節點上,用于暴露 MySQL 的監控指標(如連接數、查詢量、緩存命中率等),供 Prometheus 抓取。
  • Grafana:通過連接 Prometheus 數據源,使用預置或自定義的儀表盤(Dashboard)可視化 MySQL 的監控指標,支持圖表聯動、告警配置等功能。

3、部署組件

3.1?部署 MySQL Exporter

下載安裝包

前往Prometheus 官方下載頁獲取對應版本(以mysqld_exporter-0.14.0.linux-amd64.tar.gz為例):

wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.17.2/mysqld_exporter-0.17.2.linux-amd64.tar.gz
tar -zxvf mysqld_exporter-0.17.2.linux-amd64.tar.gz
mv mysqld_exporter-0.17.2.linux-amd64 /usr/local/mysqld_exporter

配置 Exporter 連接 MySQL

在 Exporter 目錄下創建配置文件my.cnf,寫入 MySQL 用戶信息:

[client]
user=username  # 上文創建的監控用戶
password=password  # 對應密碼
host=localhost  # MySQL地址(若遠程則填IP)
port=3306  # MySQL端口

啟動 Exporter

以系統服務方式啟動(推薦),創建/etc/systemd/system/mysqld-exporter.service

[Unit]
Description=MySQL Exporter
After=network.target[Service]
User=root
Group=root
WorkingDirectory=/usr/local/mysqld_exporter
ExecStart=/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/my.cnf
Restart=always[Install]
WantedBy=multi-user.target

啟動并設置開機自啟:

systemctl daemon-reload
systemctl start mysqld-exporter
systemctl enable mysqld-exporter

驗證:訪問http://服務器IP:9104/metrics,若能看到 MySQL 相關指標(如mysql_upmysql_connections),說明 Exporter 正常運行。

3.2 Prometheus+Grafana

安裝

參考文章:docker compose安裝Prometheus、Grafana_grafana docker-compose-CSDN博客

配置 Prometheus 抓取 Exporter 指標

編輯 Prometheus 配置文件/usr/local/prometheus/prometheus.yml,在scrape_configs中添加 MySQL Exporter 的配置:

scrape_configs:- job_name: 'mysql'  # 自定義任務名static_configs:- targets: ['localhost:9104']  # Exporter的地址(IP:端口)

重啟Prometheus。

4、配置 Grafana 可視化 MySQL 指標

添加 Prometheus 數據源

  • 登錄 Grafana 后,點擊左側 “Configuration -> Data Sources”,點擊 “Add data source”,選擇 “Prometheus”。
  • 在 “URL” 中輸入 Prometheus 的地址(如http://localhost:9090),其他默認,點擊 “Save & test”,顯示 “Data source is working” 即配置成功。

導入 MySQL 監控儀表盤

Grafana 社區提供了大量預置的 MySQL 儀表盤,可直接導入:

  • 點擊左側 “Dashboards -> Import”,輸入儀表盤 ID(推薦736211323,可在Grafana Dashboards搜索 “MySQL” 獲取)。
  • 選擇已添加的 Prometheus 數據源,點擊 “Import”,即可看到 MySQL 的監控面板(包含連接數、QPS、慢查詢、緩存狀態等指標)。

5、關鍵監控指標說明

  • 可用性指標mysql_up(1 表示正常,0 表示異常)、mysql_seconds_behind_master(從庫延遲,主從架構需關注)。
  • 連接指標mysql_connections(當前連接數)、mysql_max_connections(最大連接數)、mysql_threads_connected(已使用連接數)。
  • 查詢指標mysql_queries(總查詢數)、mysql_questions(客戶端發起的查詢數)、mysql_slow_queries(慢查詢數)。
  • 緩存指標mysql_key_cache_hit_rate(鍵緩存命中率)、mysql_query_cache_hit_rate(查詢緩存命中率,MySQL 8.0 后移除)。
  • I/O 指標mysql_bytes_received(接收字節數)、mysql_bytes_sent(發送字節數)、mysql_table_locks_waited(表鎖等待次數)。

6、總結

通過 Prometheus+Grafana+MySQL Exporter 的組合,可實現對 MySQL 的全方位監控,幫助運維和開發人員及時發現性能瓶頸、異常狀態等問題。實際使用中可根據需求調整監控指標和儀表盤,優化告警策略,確保 MySQL 服務穩定運行。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/920117.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/920117.shtml
英文地址,請注明出處:http://en.pswp.cn/news/920117.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

網絡流量分析——Tcpdump 數據包過濾

文章目錄.PCAP 文件Tcpdump 數據包過濾過濾和高級語法選項有用的 TCPDump 過濾器主機過濾器源/目標過濾器使用源和端口作為過濾器將目標與網絡過濾器結合使用協議過濾器 - 通用名稱協議過濾器 - 編號端口過濾器端口范圍過濾器小于/大于過濾器利用更大的AND 過濾器無濾鏡的基本捕…

DeepSeek V3.1 橫空出世:重新定義大語言模型的邊界與可能

當大語言模型領域的競爭進入白熱化階段,一場靜默的技術革命正在悄然醞釀。2025 年8月19日,DeepSeek 團隊帶著全新升級的 V3.1 版本強勢登場,這個被業內稱為 “智能體時代敲門磚” 的模型,究竟藏著多少顛覆認知的黑科技&#xff1f…

Unity Netcode for GameObjects(多人聯機小Demo)

提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 文章目錄前言一、安裝 Netcode for GameObjects二、做個小Dome1.NetcodeManageNet2.創建UI3.創建預制體4.代碼介紹UI代碼隨機位置代碼總結前言 Netcode for GameObjects 是 …

Ant Design for UI 選擇下拉框

1. 單選框 與多選框<template><div class"demo-page" style"padding: 40px; max-width: 1200px; margin: 0 auto; font-family: Microsoft YaHei, Arial, sans-serif;"><h1 style"color: #1890ff; text-align: center; margin-bottom…

動手學深度學習01-引言

動手學深度學習pytorch 參考地址&#xff1a;https://zh.d2l.ai/ 文章目錄動手學深度學習pytorch1-第01章-引言1. 機器學習/深度學習基礎1.1 什么是機器學習&#xff1f;1.2 深度學習與機器學習的關系&#xff1f;2. 數據&#xff08;Data&#xff09;2.1 什么是樣本、特征、標…

大模型提示詞工程背后的原理:深入理解Prompt Learning(提示學習)

“ 知其然也要知其所以然&#xff0c;為什么會有提示詞工程&#xff1f;” 了解和使用過大模型的人應該都知道提示詞工程&#xff0c;即使不了解提示詞工程&#xff0c;至少也應該聽說過&#xff0c;提示詞工程說白了就是一種和大模型交流的方法&#xff0c;它的作用就是讓大模…

AI 智能體安全設計模式:從三大“反模式”看如何構建可信的 AI 系統

摘要&#xff1a;當我們將 AI 智能體&#xff08;Agent&#xff09;從實驗原型推向生產環境時&#xff0c;許多團隊在不經意間重復著一些危險的錯誤實踐。這些反復出現的錯誤&#xff0c;在軟件工程中被稱為“反模式”&#xff08;Anti-Patterns&#xff09;。本文基于 Curity …

【前端安全】前端安全第一課:防止 XSS 和 CSRF 攻擊的常見手法

【前端安全】前端安全第一課&#xff1a;防止 XSS 和 CSRF 攻擊的常見手法 所屬專欄&#xff1a; 《前端小技巧集合&#xff1a;讓你的代碼更優雅高效》 上一篇&#xff1a; 【性能指標】決戰性能之巔&#xff1a;深入理解核心 Web 指標&#xff08;Core Web Vitals&#xff0…

QT新建文件或者項目解釋:那些模板分別是什么意思?

在 Qt Creator 的 “New File or Project” 界面中&#xff0c;不同分類下的模板有著不同的用途和適用場景&#xff0c;以下是對各部分的詳細說明&#xff1a;一、“項目” 分類下1. Application&#xff08;應用程序&#xff09;用途&#xff1a;用于創建可直接運行的應用程序…

《支付回調狀態異常的溯源與架構級修復》

在后端開發領域&#xff0c;能通過錯誤日志直接定位的問題&#xff0c;只能算作“基礎挑戰”&#xff1b;而那些依賴特定數據量、并發量或外部交互場景才會觸發的隱性問題&#xff0c;往往像藏在電路中的虛焊點&#xff0c;平時看似正常&#xff0c;關鍵時刻卻會導致整個系統斷…

C語言 運算符 (2)

一、內容概要內容提neirong關系運算符 邏輯運算符 逗號運算符 位運算二、運算符2.1 關系運算符說明&#xff1a; >,<,>,<,,! &#xff08;都是雙目的&#xff09;所有關系運算符都是雙目運算符&#xff08;二元運算符&#xff09;&#xff0c;運算符左側和右側、可…

mac版SVN客戶端: macSvn 下載、使用指南【保姆級教程】

做項目要用SVN&#xff0c;在Mac平臺找順手的客戶端好難。Windows下的TortoiseSVN很贊&#xff0c;Mac卻一直沒對等工具。直到發現新發布的MacSVN&#xff0c;布局和操作深得我心&#xff0c;內置常用工具&#xff0c;還能無縫集成到OS與任務欄&#xff0c;便捷易上手&#xff…

MongoDB分片集群自動化部署

OS&#xff1a;CentOS Linux release 7.9.2009 (Core) 場景&#xff1a; 需要半自動化或者自動化部署MongoDB集群時&#xff0c;可用此腳本。提高交付效率。 腳本實現架構圖&#xff1a;腳本&#xff1a; check_clear_host.sh #此腳本有2個功能及是檢查 資源規格和清理資源上的…

go-redis庫使用總結

文章目錄1. 概述與特性2. 安裝與初始化2.1 安裝2.2 初始化3 基本使用模式3.1 單實例客戶端3.2 連接池與自動重連4. 常用 Redis 數據結構操作4.1 字符串&#xff08;String&#xff09;4.2 哈希&#xff08;Hash&#xff09;4.3 列表&#xff08;List&#xff09;4.4 集合&#…

【軟件設計模式】策略模式

1.概念策略&#xff08;Strategy&#xff09;模式定義了一系列算法&#xff0c;并將每個算法封裝起來&#xff0c;使它們可以相互替換&#xff0c;且算法的變化不會影響使用算法的客戶。策略模式屬于行為型設計模式&#xff0c;它通過對算法進行封裝&#xff0c;把使用算法的責…

Mac電腦英特爾版本最新系統15.6.1安裝php環境

Mac電腦安裝php環境 版本環境&#xff1a; 2025-08-22 14:09:19 安裝 最新系統15.6.1系統&#xff1a; 新版本的mac不帶php環境&#xff0c;需要自己 安裝 brew install php8.3 啟動說明 查看 . 使用官方方法安裝 NVM curl -o- https://raw.githubusercontent.com/nvm-sh/…

Android焦點窗口變化導致遙控鍵值監聽失效問題分析

最近在做語音全局控制Android系統功能&#xff0c;通過集成第三方語音識別sdk得到相關控制指令&#xff0c;然后將指令通過進程間通信傳遞給當前應用并作出響應。有很多通用指令&#xff0c;比如播放/暫停&#xff0c;Android系統本身就有全局控制指令&#xff1a;KeyEvent.KEY…

降本增效:基于 JavaScript 的 AI 編程 IDE 上下文壓縮優化方案

降本增效&#xff1a;基于 JavaScript 的 AI 編程 IDE 上下文壓縮優化方案 在當前 AI 輔助編程&#xff08;AI Pair Programming&#xff09;日益普及的背景下&#xff0c;開發者越來越依賴如 GitHub Copilot、Tabnine、CodeLlama 等智能編碼工具。然而&#xff0c;一個普遍存在…

DataX HdfsWriter 插件文檔

?博客主頁&#xff1a; https://blog.csdn.net/m0_63815035?typeblog &#x1f497;《博客內容》&#xff1a;大數據、Java、測試開發、Python、Android、Go、Node、Android前端小程序等相關領域知識 &#x1f4e2;博客專欄&#xff1a; https://blog.csdn.net/m0_63815035/…

Rancher 管理的 K8S 集群中部署常見應用(MySQL、Redis、RabbitMQ)并支持擴縮容的操作

文章目錄一、前提條件二、準備鏡像三、進入 Rancher UI 部署3.1. 進入 Workloads3.2. 部署 MySQL3.3. 部署 Redis3.4. 部署 RabbitMQ四、驗證服務五、擴縮容&#xff08;UI 操作&#xff09;六、附錄yml部署文件6.1. mysql.yaml6.2. redis.yaml6.3. rabbitmq.yaml一、前提條件 …