zabbix使用自帶模板監控mysql

    一直在研究使用zabbix監控mysql數據庫,由於zabbix官方的模板支持監控mysql,但是直接使用自帶的模板不可用的,需要做一些設置才能夠使用。如果你對mysql的監控需求比較簡單,那麼直接使用zabbix自帶的模板即可,如果你的監控需求較高那麼將自己編寫相關的腳本來實現。


以下乃使用zabbix自帶的模板監控mysql步驟:

環境如下:CentOS release 6.5   zabbix-2.2.9   mysql-5.1.73

1.  在zabbix的web訪問頁面中爲主機添加mysql監控模板(默認的MYSQL template name爲:Template App MySQL)。

2.  在abbix的客戶端配置文件(zabbix_agentd.cnf)中添加如下信息:(以下內容制定zabbix_agentd獲取mysql數據)

1. UnsafeUserParameters=1                     #啓用自定義KEY
2. UserParameter=mysql.size[*],echo "select sum($(case "$3" in both|"") echo "data_length+index_length";; data|index) echo "$3_length";; free) echo "data_free";; esac)) from information_schema.tables$([[ "$1" = "all" || ! "$1" ]] || echo " where table_schema='$1'")$([[ "$2" = "all" || ! "$2" ]] || echo "and table_name='$2'");" | HOME=/usr/local/zabbix/etc mysql -N

3. UserParameter=mysql.ping,HOME=/usr/local/zabbix/etc mysqladmin ping | grep -c alive
4. UserParameter=mysql.version,mysql -V
5. UserParameter=mysql.status[*],echo "show global status where Variable_name='$1';" | HOME=/usr/local/zabbix/etc  mysql -N | awk '{print $$2}'

備註:以上代碼中的HOME=/usr/local/zabbix/etc/爲制定zabbix_agentd訪問數據庫的信息,不可出錯

3.  配置mysql數據庫創建一個用戶來獲取監控mysql的相關數據:

 GRANT USAGE ON *.* TO 'mysql_data'@'localhost' IDENTIFIED BY 'p@ssw0rd';
 Query OK, 0 rows affected (0.00 sec)
 flush privileges;
 Query OK, 0 rows affected (0.00 sec)

4.  添加完賬戶之後新建/usr/local/zabbix/etc/.my.cnf來提供zabbix agentd訪問數據庫,內容如下

# vim /usr/local/zabbix/etc/.my.cnf 
[mysql]
host     = localhost
user     = mysql_data
password = p@ssw0rd
socket   = /var/lib/mysql/mysql.sock
[mysqladmin]
host     = localhost
user     = mysql_data
password = p@ssw0rd
socket   = /var/lib/mysql/mysql.sock

5.  修改完如上信息後即重啓zabbix_agentd即可。

6.  以上信息修改後,即可在監控頁面查看的mysql的監控信息圖形。

wKiom1WKYdXgFClIAAQsrhvmlmo217.jpg

wKiom1WKYdWg-ghRAATm82AxV2k707.jpg

如何安裝zabbix及添加模板鏈接下一篇內容。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章