您的位置:首页 > 数据库 > SQL

MySQL主从复制的维护脚本

2016-07-14 11:21 513 查看
#!/bin/bash
#date is 2016-7-13
##### 主
mstool="/usr/local/mysql/bin/mysql -h mysql_m.bj.com -uroot -proot -P 3306"
##### 从
sltool="/usr/local/mysql/bin/mysql -h 192.168.153.92 -uroot -proot -P 3306"
declare -a slave_stat
slave_stat=($($sltool -e "show slave status\G" |grep Running |awk -F : '{print $2}'
))
if [ "${slave_stat[0]}" = "Yes" -a "${slave_stat[1]}" = "Yes" ]
then
echo "OK slave is running"
exit 0
else
echo "Critical slave is error"
echo
echo "*********************************************************"
echo "Now Starting replication with Master Mysql!"
file=`$mstool -e "show master status\G"|grep -i "File"|awk '{print $2}'`
pos=`$mstool -e "show master status\G"|grep -i "Pos"|awk '{print $2}'`
$sltool -e "slave stop;change master to master_host='mysql_m.bj.com',master_port=3306,master_user='mysync',master_password=mysync',master_log_file='$file',master_log_pos=$pos;slave start;"
sleep 3
$sltool -e "show slave status\G;"|grep Running
echo
echo "Now Replication is Finished!"
echo
echo "**********************************************************"
exit 2
fi


大家可以根据的自己的环境更改相关参数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Running