新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
使用shell腳本部署MySQL主從復(fù)制
MySQL 主從復(fù)制是指數(shù)據(jù)可以從一個MySQL數(shù)據(jù)庫服務(wù)器主節(jié)點復(fù)制到一個或多個從節(jié)點。MySQL 默認采用異步復(fù)制方式,這樣從節(jié)點不用一直訪問主服務(wù)器來更新自己的數(shù)據(jù),數(shù)據(jù)的更新可以在遠程連接上進行,從節(jié)點可以復(fù)制主數(shù)據(jù)庫中的所有數(shù)據(jù)庫或者特定的數(shù)據(jù)庫,或者特定的表。

centos6兩臺 Master IP:192.168.88.153 Slave IP:192.168.88.152 配置免密登錄
ssh-keygen -t rsa
ssh-copy-id root@192.168.88.153
編寫mysql_master腳本
#!/bin/bash
service iptables stop
setenforce 0
yum -y install mysql mysql-server
sed -ie '7a\server-id=1\nlog-bin=mysql-bin\nrelay-log=mysql-log\n' /etc/my.cnf
service mysqld restart
mysql -e " grant all on *.* to 'tom'@'%' identified by '123'; "
mysql -e " flush privileges; "
mysql -e " show master status; "
編寫mysql_slave腳本
#!/bin/bash
bin=`ssh root@192.168.88.152 "mysql -e 'show master status;'|grep mysql"`
file=`echo $bin|awk -F ' ' '{print $1}'`
pos=`echo $bin|awk -F ' ' '{print $2}'`
service iptables stop
setenforce 0
yum -y install mysql mysql-server
sed -ie '7a\server-id=2\nlog-bin=mysql-bin\nrelay-log=mysql-log\n' /etc/my.cnf
service mysqld start
mysql -e "change master to master_host='192.168.88.152',master_user='tom',master_password='123',master_log_file='$file',master_log_pos=$pos;"
mysql -e 'start slave'
mysql -e 'show slave status \G;'
IO=`mysql -e "show slave status\G;" 2>/dev/null |grep Slave_IO_Running|awk -F ':' '{print $2}'`
SQL=`mysql -e "show slave status\G;" 2>/dev/null |grep Slave_SQL_Running|awk -F ':' '{print $2}'`
if [ $IO == "Yes" -a $SQL == "Yes" ]
then
echo "成功"
else
echo "失敗"
fi
將mysql_slave.sh復(fù)制到slave主機
scp mysql_slave.sh 192.168.88.153:/root/
執(zhí)行腳本
sh mysql_master.sh
ssh root@192.168.88.153 "sh /root/mysql_slave.sh"
當前文章:使用shell腳本部署MySQL主從復(fù)制
瀏覽路徑:http://www.5511xx.com/article/coohsoi.html


咨詢
建站咨詢
