shell脚本监控mysql主从同步状态
最近给公司搭建了个基于gtid的mysql主从,为了方便自己随时看主从是否同步成功,(其实也是自己懒),写了个监控mysql主从的shell脚本,该脚本可以每隔10s查看一次,当然只能监控从库的情况,只能说将就用,也不想写得太高级了.
系统:centos 7 (64位)
环境:mysql 5.6(gtid主从)
脚本内容:
cat /root/soft_shell/check_mysql_master_slave.sh
#!/bin/bash mysql_user="root" mysql_pass="password" mysql_status=`netstat -nl | awk 'NR>2{if ($4 ~ /.*:3306/) {print "Yes";exit 0}}'` while : do if [ "$mysql_status" == "Yes" ];then slave_status=`mysql -u${mysql_user} -p${mysql_pass} -e"show slave status\G" | grep "Running" | grep -v "Running_State"` slave_log=`mysql -u${mysql_user} -p${mysql_pass} -e"show slave status\G" | egrep -i "Master_Log_File|Relay_Master_Log_File|Read_master_log_Pos|Exec_Master_log_pos|Seconds_Behind_Master"` echo -e "\033[40;31m$slave_status\033[40;37m" echo -e "\033[40;32m$slave_log\033[40;37m" else echo -e "\033[40;31mmysql is down!\033[40;37m" exit 1 fi sleep 10 done
效果如下:
希望这个脚本会让你满意,好了,本文就到这里了.
评论: