Mysql監控工具小集合
- 介紹一些常見的Mysql監控工具。
Cacti
-
Cacti是 一套基於PHP,MySQL,SNMP及RRDTool開發的網路流量監測圖形分析工具。它通過snmpget來獲取資料,使用 RRDtool繪畫圖形,而且你完全可以不需要了解RRDtool複雜的引數。它提供了非常強大的資料和使用者管理功能,可以指定每一個使用者能檢視樹狀結 構、host以及任何一張圖,還可以與LDAP結合進行使用者驗證,同時也能自己增加模板,功能非常強大完善,介面友好。
-
MysqlReport
-
MysqlReport 實際上只是一個Perl指令碼,不過監控資料非常直觀:
-
-
各監控指標,官網有詳細說明
- Cacti監控上的Mysql資料就是參考它,搭建Apache+perl環境即可訪問。缺點是隻能進行時時監控,無圖表和歷史資料功能。
phpMyAdmin
-
phpMyAdmin與 其說是Mysql的監控工具,不如說是Mysql的管理工具。相比一些Mysql客戶端的GUI管理工具(如“MySQL Administrator”),phpMyAdmin是Web模式的。phpMyAdmin 是以PHP為基礎,以Web-Base方式架構在網站主機上的MySQL的資料庫管理工具。
-
phpMyAdmin的管理頁面中包含了一個“狀態”頁面,列出了Mysql的詳細狀態資訊,官網上有對應指標的詳細說明
-
MySQL Administartor
- MySQL官方管理工具;
-
有簡單的監控功能。
zabbix
-
zabbix是一個CS結構的監控系統,server端偵聽在10051埠,agent偵聽在10050埠。使用者介面使用php開發的Web程式,資料儲存在MySQL資料庫中。
- zabbix使用了客戶端監控模式,與金山Cacti相似,zabbix也支援net-snmp的監控。
-
zabbix功能繁多,未進行詳細研究。附上一張用zabbix監控CPU負載的監控圖:
-
MONyog
-
MONyog是一套客戶端主動收集Mysql執行資料的服務程式。
-
起初關注MONyog是因為它發現了一個專案上的問題:建立連線數過多。
它預設監控的connections是指建立連線數的總量,而通常情況下我們只關注即時連線數。對於頻繁建立和關閉連線的應該程式,關注總量則一眼可以看出問題。
監控圖預覽: -
- 非常遺憾的是!MONyog是收費軟體,從試用版的情況來看,沒有找到定製功能。
mytop
- 類似Linux系統的top命令,專門監控Mysql的執行狀態
-
監控命令:
1 mytop --host=10.20.192.109 --dbuser=root --password=123456
執行結果:1 MySQL on 10.20.192.109 (5.0.81) up 0+00:15:03 [11:51:51] 2 Queries: 35.0 qps: 0 Slow: 0.0 Se/In/Up/De(%): 00/00/00/00 qps now: 0 Slow qps: 0.0 Threads: 52 3 Key Efficiency: 96.4% Bps in/out: 0.9/114.1 Now in/out: 8.4/ 1.2k 4 Id User Host/IP DB Time Cmd Query or State 5 -- ---- ------- -- ---- --- ---------- 6 67 root vmvistcn261sp1u 0 Query show full processlist 7 6 root vmxpcn270sp2 36 Sleep 8 ……
mtop
- 類似Linux系統的top命令,專門監控Mysql的執行狀態
-
監控命令:
1 mtop --host=10.20.192.109 --dbuser=root --password=123456
執行結果:1 10.20.192.109 mysqld 5.0.81 up 0 day(s), 0:05 hrs 2 52 threads: 1 running, 0 cached. Queries/slow: 5/0 Cache Hit: 100.00% 3 Opened tables: 0 RRN: 459 TLW: 0 SFJ: 0 SMP: 0 QPS: 0 4 ID USER HOST DB TIME COMMAND STATE INFO 5 28 root 10.20.212.39:522 Query show full processlist 6 ……
其它
- 相關工具還有:
- kontrollbase,始終沒裝起來;
- mycat,裝上去居然不知怎樣用。