首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 效能監控指標體系:QPS、TPS、緩衝區命中率、鎖、複寫延遲、開源工具

     編輯:MySQL 資料庫相關知識

MySQL 效能監控核心在於「抓取狀態變數 → 計算關鍵比率 → 設定告警閾值」。本文整理 12 大類指標計算公式、獲取指令與開源監控工具推薦。

系統層指標 (Linux)

指標指令關注重點
MySQL 進程數ps -ef | awk '{print $1}' | grep mysql | grep -v grep | wc -l異常暴增可能為連線洩漏
負載/運作時間uptimeload average 1/5/15 分鐘
CPU 使用率top / vmstat 1us/sy/wa/iowait
磁碟 IOiostat -x 1 / vmstat 1await、svctm、%util
記憶體/Swapfree -h可用記憶體、Swap 使用量

MySQL 核心指標 (需 SHOW GLOBAL STATUS)

指標計算公式獲取指令健康閾值參考
QPS (每秒查詢數)Questions / UptimeSHOW GLOBAL STATUS LIKE 'Questions';視業務而定,突增需警戒
TPS (每秒事務數)(Com_commit + Com_rollback) / UptimeSHOW GLOBAL STATUS LIKE 'Com_commit'; SHOW ... LIKE 'Com_rollback';同上
Key Buffer 讀命中率(1 - Key_reads / Key_read_requests) * 100%SHOW GLOBAL STATUS LIKE 'Key_read%';> 99%
Key Buffer 寫命中率(1 - Key_writes / Key_write_requests) * 100%SHOW GLOBAL STATUS LIKE 'Key_write%';> 95%
InnoDB Buffer 讀命中率(1 - Innodb_buffer_pool_reads / Innodb_buffer_pool_read_requests) * 100%SHOW GLOBAL STATUS LIKE 'Innodb_buffer_pool_read%';> 99%
Query Cache 命中率Qcache_hits / (Qcache_hits + Qcache_inserts) * 100%SHOW GLOBAL STATUS LIKE 'Qcache%';> 80% (若啟用 QC)
Table Cache 狀態Open_tables / Opened_tablesSHOW GLOBAL STATUS LIKE 'Open%tables';Open_tables 接近 table_open_cache 需調大
Thread Cache 命中率(1 - Threads_created / Connections) * 100%SHOW GLOBAL STATUS LIKE 'Thread%'; SHOW ... LIKE 'Connections';> 90%
鎖狀態Table_locks_waited / Table_locks_immediateSHOW GLOBAL STATUS LIKE '%lock%';waited / immediate < 1%
複寫延遲Seconds_Behind_MasterSHOW SLAVE STATUS\G= 0 (理想),< 10 秒可接受
臨時表磁碟化Created_tmp_disk_tables / Created_tmp_tables * 100%SHOW GLOBAL STATUS LIKE 'Created_tmp%';< 25%
Binlog Cache 使用Binlog_cache_disk_use / Binlog_cache_useSHOW GLOBAL STATUS LIKE 'Binlog_cache%';disk_use = 0 最佳
InnoDB Log WaitsInnodb_log_waitsSHOW GLOBAL STATUS LIKE 'innodb_log_waits';= 0

開源監控工具推薦

  • Prometheus + mysqld_exporter + Grafana:業界標準,指標豐富、告警靈活、儀表板生態完整。
  • Percona Monitoring and Management (PMM):專為 MySQL/MongoDB 設計,開箱即用、QAN 慢查詢分析強大。
  • Zabbix:企業級監控平台,MySQL 模板成熟、支援自動發現。
  • Cacti:RRDTool 繪圖老牌,適合長期趨勢圖,配置相對繁瑣。
  • Nagios / Icinga:側重可用性檢查,搭配 NRPE 執行自訂腳本。

實施建議

  1. 先建立基線:連續 1-2 週記錄核心指標,確定正常範圍。
  2. 設定分級告警:Warning (閾值 80%)、Critical (閾值 95%)、Page (閾值 99%)。
  3. 定期複盤:每月檢視 Top 10 慢查詢、鎖等待、磁碟增長趨勢。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved