shell习题第26题:监控mysql服务
Posted dingzp
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell习题第26题:监控mysql服务相关的知识,希望对你有一定的参考价值。
【题目要求】
假设mysql密码是123456. 写脚本监控mysql服务是否正常,比如是否可以执行show processlist,并检测一下当前的mysql服务是主还是从。如果是从,请判断他的主从服务是否正常。如果是主,则不需要做什么
【核心要点】
mysql -uroot -p123456 -e "show processlist"
show slave status
【脚本】
#!/bin/bash mysql="/usr/local/mysql/bin/mysql -uroot -p123456" if ! $mysql -e "show processlist" >/dev/null 2>/dev/null then echo "Mysql service is down" else $mysql -e "show slave status\G" 2>/dev/null > /tmp/slave.stat n=`wc -l /tmp/slave.stat | awk ‘print $1‘` if [ $n -eq 0 ]; then echo "This is master." else echo "This is slave." $mysql -e "show slave status\G" | egrep ‘Slave_IO_Running:|Slave_SQL_Running:‘ | awk -F‘: ‘ ‘print $2‘ >/tmp/SQL.tmp if grep -qw "NO" /tmp/SQL.tmp then echo "The slave is down." fi fi fi
以上是关于shell习题第26题:监控mysql服务的主要内容,如果未能解决你的问题,请参考以下文章