zoukankan      html  css  js  c++  java
  • shell(3)-mysql主从监控shell

    需要先明白数据库主从同步正常的标准是来查看两个线程Slave_IO和Slave_SQL两个线程的工作状态;


    #!/bin/bash
    #Check MySQL Slave's Runnning Status
    #Crontab time 00:10

    MYSQLPORT=`netstat -na|grep "LISTEN"|grep "3306"|awk -F[:" "]+ '{print $5}'`
    MYSQLIP=`ifconfig eth0|grep "inet addr" | awk -F[:" "]+ '{print $4}'`
    STATUS=$(/usr/bin/mysql -uroot -p11111 -S /var/lib/mysql/mysql.sock -e "show slave statusG" | grep -i "running")
    IO_env=`echo $STATUS | grep IO | awk ' {print $2}'`
    SQL_env=`echo $STATUS | grep SQL | awk '{print $2}'`
    DATA=`date +"%y-%m-%d %H:%M:%S"`

    function checkMysqlStatus(){
    if [ "$MYSQLPORT" == "3306" ]
    then
    /usr/bin/mysql -uroot -p11111 --connect_timeout=5 -e "show databases;" &>/dev/null 2>&1
    if [ $? -ne 0 ]
    then
    echo "Server: $MYSQLIP mysql is down, please try to restart mysql by manual!" > /var/log/mysqlerr
    mail -s "WARN! server: $MYSQLIP mysql is down." admin@yourdomain.com < /var/log/mysqlerr
    else
    echo "mysql is running..."
    fi
    else
    mail -s "WARN!Server: $MYSQLIP mysql is down." admin@yourdomain.com
    fi
    }

    checkMysqlStatus

    if [ "$IO_env" = "Yes" -a "$SQL_env" = "Yes" ]
    then
    echo "MySQL Slave is running!"
    else
    echo "####### $DATA #########">> /data/mysql/mysql_slave_status.log
    echo "MySQL Slave is not running!" >> /data/mysql/mysql_slave_status.log
    echo "MySQL Slave is not running!" | mail -s "WARN! $MYSQLIP MySQL Slave is not running." admin@yourdomain.com
    fi

    每十分钟运行一次
    */10 * * * * root /bin/sh /root/mysql_slave_status.sh

    原理:
    1)监控MYSQL的运行状态;
    2)Slave机器的IO和SQL状态都必须为YES,缺一不可;

  • 相关阅读:
    在Linux上安装 nessus
    漏洞靶场--webug4.0安装
    VMware问题--无法获得 VMCI 驱动程序的版本: 句柄无效
    RobotFramework 截取中文中的数字比较时长
    robotframework 找出重复元素
    Robot Framework 自动化接口测试
    xpath的编写规则
    python模块安装问题:no matching distribution found for XXX 或者 Read timed out.
    python字典获取最大值的键的值
    RobotFramework常见语法
  • 原文地址:https://www.cnblogs.com/luoyan01/p/9734078.html
Copyright © 2011-2022 走看看