mysql 备份检测主从脚本

1.自动检测mysql主从 有没有配置成功

#!/bin/bash
check(){
list=($(mysql -e "show slave status\G;" 2>/dev/null |egrep "Running|Behind" |head -n3|awk -F ':' '{print $2}'))
#echo ${list[@]}
if [ ${list[0]} = "Yes" -a ${list[1]} = "Yes" -a ${list[2]} -lt 120 ]; then
        echo '${list[0]}' "is ${list[0]}"
        echo '${list[1]}' "is ${list[1]}"
        echo '${list[2]}' "is ${list[2]}"
        echo "mysql slave is ok!"
else
        #echo ""
        mail -s "mysql slave is not ok" hehe@163.com
fi
}
while :
do
        check
        sleep 3
done

 2.数据库备份

#!/bin/bash
for dbname in `mysql -e "show databases" 2>/dev/null | egrep -v "Database|schema"`
do
        echo $dbname
        #分库备份
        mysqldump --databases $dbname > /tmp/$dbname.sql
        #分表备份
        mysql -e "show tables from $dbname;" 2>/dev/null |sed '1d' >> /tmp/tables.txt
        while read table
        do
          echo $table
          mysqldump  $dbname $table >/tmp/$dbname_$table.sql
        done < /tmp/tables.txt
done

  

 

posted @ 2019-12-23 15:15  Databasess  阅读(196)  评论(0编辑  收藏  举报