午夜视频在线网站,日韩视频精品在线,中文字幕精品一区二区三区在线,在线播放精品,1024你懂我懂的旧版人,欧美日韩一级黄色片,一区二区三区在线观看视频

分享

shell監(jiān)控腳本實(shí)例—監(jiān)控mysql主從復(fù)制

 xf_baby 2013-11-29
分享一例shell腳本,用于監(jiān)測mysql數(shù)據(jù)庫的主從復(fù)制,有需要的朋友不妨參考學(xué)習(xí)下。

轉(zhuǎn)自:http://www./article/14103.html(轉(zhuǎn)載請(qǐng)注明出處)


本節(jié)內(nèi)容:

監(jiān)控mysql主從復(fù)制的shell腳本。


說明:
監(jiān)控腳本在 rhel5 下測試正常,其它版本的linux 系統(tǒng)請(qǐng)自行測試。

代碼:

復(fù)制代碼代碼如下:
#監(jiān)控mysql 主從復(fù)制
cat chk_mysql_rep.sh 
#!/bin/bash 

#script_name:chk_mysql_rep.sh 
#check mysql replication 

#ssh root@xen "/usr/local/mysql/bin/mysql -uroot -pdongnan -e 'show slave status\G' -ss" | awk '/Running:/ {print $2}' 
#Yes 
#Yes 

#variables 
ssh=/usr/bin/ssh 
sh_dir=/root/sh/ 
crondir=${sh_dir}crontab 
source ${sh_dir}CONFIG 
hosts="$DB_SLAVE_HOSTS"
#main 
#主循環(huán)遍歷機(jī)器 www.
for HOST in $hosts;do 
log=$crondir/log/mysql_replication_error.log 
key=$($ssh root@$HOST "/usr/local/mysql/bin/mysql -uroot -pdongnan -e 'show slave status\G' -ss" | awk '/Running:/ {printf $2}') 
    #無法連接的主機(jī),跳過本次循環(huán) 
    test -z "$key" && continue 
    #返回結(jié)果真 
    if [ "$key" == "YesYes" ];then 
        #flag真,解除報(bào)警 
        if [ -f "${crondir}/log/$HOST.mysql" ];then 
            #sms 
            #for mobile in $MOBILES;do 
                #echo "$HOST replication ok" | /usr/local/bin/gammu --sendsms TEXT "$mobile" -unicode 
            #done 
            #mail 
            for mail in $MAILS;do 
                echo "$HOST replication ok" | mail -s "$HOST replication ok" $mail 
            done 
            #flag 
            rm -f "${crondir}/log/$HOST.mysql" 
        fi 
    #返回結(jié)果假 
    else   
check_date=$(date '+ %F %T') 
        #flag假,報(bào)警 
        if [ ! -f "${crondir}/log/$HOST.mysql" ];then 
            #sms www.
            #for mobile in $MOBILES;do 
                #echo "$HOST replication error" | /usr/local/bin/gammu --sendsms TEXT "$mobile" -unicode 
            #done 
            #mail 
            for mail in $MAILS;do 
                echo "$HOST replication error" | mail -s "$HOST replication error" $mail 
            done 
            #flag 
            echo "replication error" >"${crondir}/log/$HOST.mysql" 
            #log 
            echo "$check_date $HOST mysql replicaton error" >> $log 
        fi 
    fi 

done 


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多