#!/bin/bash
#check MySQL_Slave Status
#crontab time 00:10
Mail-list=
MysqlUser=
MysqlPass=
MYSQLPORT=`netstat -na|grep
"LISTEN"
|grep
"3306"
|awk -F[:
" "
]+
'{print $5}'
`
MYSQLIP=`ifconfig eth0|grep
"inet addr"
| awk -F[:
" "
]+
'{print $4}'
`
STATUS=$(/usr/local/mysql/bin/mysql -u
$MysqlUser
-
$MysqlPass
-e
"show slave status\G"
| grep -i
"running"
)
IO_env=`
echo
$STATUS
| grep IO | awk
' {print $2}'
`
SQL_env=`
echo
$STATUS
| grep SQL | awk
'{print $2}'
`
if
[
"$MYSQLPORT"
==
"3306"
]
then
echo
"mysql is running"
else
/bin/mail -s
"warning!server: $MYSQLIP mysql is down"
$Mail
-list
fi
if
[
"$IO_env"
=
"Yes"
-a
"$SQL_env"
=
"Yes"
]
then
echo
"Slave is running!"
else
echo
"####### $date #########"
>> /tmp/check_mysql_slave.log
echo
"Slave is not running!"
>> /tmp/check_mysql_slave.log
echo
"Slave is not running!"
#mail -s
"warn! $MySQLIP_replicate_error"
$Mail
-list << /tmp/check_mysql_slave.log
echo
"`cat /tmp/check_mysql_slave.log`"
|mail -s
"Warning...slave is not running!!"
$Mail
-list
fi