shellスクリプトはmysqlプライマリスレーブ(プライマリ)を監視し、189メールボックスを送信します.


スクリプトの原理は簡単です.まずmysqlに接続し、データベースを同期させるステータスフィールドSlave_IO_Running,Slave_SQL_Runningの値を取り出し、
「YES」でない場合は同期に問題が発生し、mailでメール送信機能を実現します.携帯電話が139または189メールボックスを開設すれば、メール通知機能を実現することができる.
コードは次のとおりです.
#!/bin/bash
username='root'
password='123456'
host1="192.168.0.x"
host2="192.168.0.xx"
mailist='[email protected],[email protected]'
mysqlcmd=/usr/local/mysql-5.5.8/bin/mysql
Host1_Slave_IO_Running=`$mysqlcmd -h$host1 -u$username -p$password -e "show slave status \G"|grep Slave_IO_Running|awk -F: '{print $2 }'`
Host2_Slave_IO_Running=`$mysqlcmd -h$host2 -u$username -p$password -e "show slave status \G"|grep Slave_IO_Running|awk -F: '{print $2 }'`
Host1_Slave_SQL_Running=`$mysqlcmd -h$host1 -u$username -p$password -e "show slave status \G"|grep Slave_SQL_Running|awk -F: '{print $2 }'`
Host2_Slave_SQL_Running=`$mysqlcmd -h$host2 -u$username -p$password -e "show slave status \G"|grep Slave_SQL_Running|awk -F: '{print $2 }'`
if [ $Host1_Slave_IO_Running != "Yes" ] || [ $Host1_Slave_SQL_Running != "Yes" ]
then
 mail   -s   "alarm!"  "$maillist"  <

注意:送信する複数のメールボックスの間を‘,’カンマで区切って、もともとQQと会社のメールボックスに送信することを書いて、しかしシステムの配達はいつも失敗して、送信するメールはスパムにされて、システムにremoveに落ちました