zabbix監控MySQL

主要是通過mysql"SHOW STATUS"命令獲取當前數據庫重要參數的運行情況,簡單方便,監控mysql數據庫必不可少,如需監控其他參數,依葫蘆畫瓢即可,。

1、在zabbix客戶端的配置文件中打開或添加以下內容:  

UnsafeUserParameters=1 

UserParameter=mysql.Open_tables,/usr/local/zabbix/bin/mysql.py Open_tables 

UserParameter=mysql.Opened_tables,/usr/local/zabbix/bin/mysql.py Opened_tables 

UserParameter=mysql.Max_used_connections,/usr/local/zabbix/bin/mysql.py Max_used_connections 

UserParameter=mysql.Threads_connected,/usr/local/zabbix/bin/mysql.py Threads_connected 

UserParameter=mysql.Qcache_free_blocks,/usr/local/zabbix/bin/mysql.py Qcache_free_blocks 

UserParameter=mysql.Qcache_total_blocks,/usr/local/zabbix/bin/mysql.py Qcache_total_blocks 

UserParameter=mysql.Handler_read_first,/usr/local/zabbix/bin/mysql.py Handler_read_first 

UserParameter=mysql.Handler_read_key,/usr/local/zabbix/bin/mysql.py Handler_read_key 

UserParameter=mysql.Handler_read_rnd_next,/usr/local/zabbix/bin/mysql.py Handler_read_rnd_next 

UserParameter=mysql.Slow_queries,/usr/local/zabbix/bin/mysql.py Slow_queries

UserParameter=mysql.Com_insert,/usr/local/zabbix/bin/mysql.pyCom_insert

UserParameter=mysql.Com_select,/usr/local/zabbix/bin/mysql.pyCom_select

UserParameter=mysql.Com_update,/usr/local/zabbix/bin/mysql.pyCom_update

UserParameter=mysql.Binlog_cache_use,/usr/local/zabbix/bin/mysql.pyBinlog_cache_use

UserParameter=mysql.Innodb_data_reads,/usr/local/zabbix/bin/mysql.pyInnodb_data_reads

UserParameter=mysql.Innodb_data_writes,/usr/local/zabbix/bin/mysql.pyInnodb_data_writes 


2./usr/local/zabbix/bin/mysql.py腳本的內容如下:  

安裝pythonmysql相關模塊

yum install -y python MySQL-python

 [root@wikiDB bin]# cat mysql.py

#!/usr/bin/env python 

# -*- coding: utf-8 -*- 

#File:mysql_status.py 

import MySQLdb,sys 

user = 'root'

passwd = ''

a = sys.argv[1] 

try: 

    conn = MySQLdb.connect(host ='127.0.0.1',user = user,passwd = passwd,connect_timeout =2,unix_socket='/data/3306/mysql.sock') 

    cursor = conn.cursor() 

    sql = "SHOW STATUS"

    cursor.execute(sql) 

    alldata = cursor.fetchall() 

    for data in alldata: 

        if data[0] == a : 

            #print data[0],data[1] 

            print data[1] 

            break

    cursor.close() 

    conn.close() 

except Exception, e:   

    print e   

    sys.exit() 

 

'''''Open_tables 

Opened_tables 

Max_used_connections 

Threads_connected 

Qcache_free_blocks 

Qcache_total_blocks 

Handler_read_first 

Handler_read_key 

Handler_read_rnd_next 

Com_insert

Com_select

Com_update

Binlog_cache_use

Innodb_data_reads

Innodb_data_writes

Slow_queries'''

3.zabbix服務器端設置相關的監控項即可;


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