centos6两台
Master IP:192.168.88.152
Slave IP:192.168.88.153
以下都是在主机上操作
两机配置免密登录
ssh-keygen -t rsa ssh-copy-id [email protected]
编写mysql_master脚本
vim mysql_mster.sh
#!/bin/bash
service iptables stop
setenforce 0
yum -y install mysql mysql-server #安装mysql服务 如果是centos7 安装命令 yum -y install mariadb mariadb-server
sed -ie '7a\server-id=1\nlog-bin=mysql-bin\nrelay-log\n' /etc/my.cnf #修改中继日志
service mysqld restart #重启mysql服务
mysql -e "grant all on *.* to 'tom'@'%' identified by '123';" #用户授权
mysql -e 'flush privileges;' #刷新
mysql -e 'show master status;' #查看二进制
编写mysql_slave脚本
vim mysql_slave.sh #!/bin/bash bin=`ssh [email protected] "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\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复制到slave主机上
scp mysql_slave.sh 192.168.88.153:/root/
执行mysql_master.sh
sh mysql_master.sh
在master主机上远程执行mysql_slave脚本
ssh [email protected] "sh /root/mysql_slave.sh"