监控mysql

Posted pluto2charon

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了监控mysql相关的知识,希望对你有一定的参考价值。

# 用户名

mysql_USER=‘zabbix‘

# 密码

MYSQL_PWD=‘zabbix‘

# 主机地址/IP

MYSQL_HOST=‘172.30.210.166‘

# 端口

MYSQL_PORT=‘3306‘

# 数据连接

MYSQL_CONN="/data/soft/zabbix/mysql/bin/mysqladmin -u${MYSQL_USER} -p${MYSQL_PWD} -h${MYSQL_HOST} -P${MYSQL_PORT}"

# 参数是否正确

if [ $# -ne "1" ];then

    echo "arg error!" 

fi

# 获取数据

case $1 in

    Uptime)

        result=`${MYSQL_CONN} status 2>/dev/null |cut -f2 -d":"|cut -f1 -d"T"`

        echo $result 

        ;;

    Com_update)

        result=`${MYSQL_CONN} extended-status 2>/dev/null |grep -w "Com_update"|cut -d"|" -f3`

        echo $result 

        ;;

    Slow_queries)

        result=`${MYSQL_CONN} status 2>/dev/null |cut -f5 -d":"|cut -f1 -d"O"`

        echo $result 

        ;;

    Com_select)

        result=`${MYSQL_CONN} extended-status 2>/dev/null |grep -w "Com_select"|cut -d"|" -f3`

        echo $result 

                ;;

 Com_rollback)

        result=`${MYSQL_CONN} extended-status 2>/dev/null |grep -w "Com_rollback"|cut -d"|" -f3`

                echo $result 

                ;;

    Questions)

        result=`${MYSQL_CONN} status 2>/dev/null |cut -f4 -d":"|cut -f1 -d"S"`

                echo $result 

                ;;

    Com_insert)

        result=`${MYSQL_CONN} extended-status 2>/dev/null |grep -w "Com_insert"|cut -d"|" -f3`

                echo $result 

                ;;

    Com_delete)

        result=`${MYSQL_CONN} extended-status 2>/dev/null |grep -w "Com_delete"|cut -d"|" -f3`

                echo $result 

                ;;

Com_commit)

        result=`${MYSQL_CONN} extended-status 2>/dev/null |grep -w "Com_commit"|cut -d"|" -f3`

                echo $result 

                ;;

    Bytes_sent)

        result=`${MYSQL_CONN} extended-status 2>/dev/null |grep -w "Bytes_sent" |cut -d"|" -f3`

                echo $result 

                ;;

    Bytes_received)

        result=`${MYSQL_CONN} extended-status 2>/dev/null |grep -w "Bytes_received" |cut -d"|" -f3`

                echo $result 

                ;;

    Com_begin)

        result=`${MYSQL_CONN} extended-status 2>/dev/null |grep -w "Com_begin"|cut -d"|" -f3`

                echo $result 

                ;;

 

        *)

        echo "Usage:$0(Uptime|Com_update|Slow_queries|Com_select|Com_rollback|Questions|Com_insert|Com_delete|Com_commit|Bytes_sent|Bytes_received|Com_begin)" 

        ;;

esac

 

UserParameter=mysql.status[*],/data/soft/zabbix/zabbix/scripts/mysql_status.sh $1

以上是关于监控mysql的主要内容,如果未能解决你的问题,请参考以下文章

mysql监控

zabbix监控mysql-如何使用zabbix自带的模板监控-nagios监控mysql主从

如何监控mysql表记录变化

如何监控mysql表的变化

实战案例:Zabbix监控MySQL主机

MySQL 监控 第01期:Prometheus+Grafana 监控 MySQL