#!/bin/bash
#安装mysql主从
SERVER_ID=`ip add|grep inet |grep -ioE "([0-9]{1,3}\.){3}[0-9]{1,3}"|grep -vE "127.0.0.1|192.168.1.255"|awk -F . '{print$4}'`
MYSQL_USER=root
MYSQL_PASSWD=qqibiao
MASTER_IP=192.168.1.201
SLAVE_IP=192.168.1.200
SLAVE_USER=ceshi
MASTER_LOG_FILE=`MYSQLSSH "show master status" |grep mysql-bin|awk '{print$1}'`
MASTER_LOG_POS=`MYSQLSSH "show master status" |awk '{print$2}'|grep -E [0-9]`
SLVAE_IP=192.168.1.200
MYSQLZHU () {
mysql -u${MYSQL_USER} -P ${MYSQL_PASSWD} -e
}
MYSQLCONG () {
mysql -u${MYSQL_USER} -P ${MYSQL_PASSWD} -e
}
MYSQLSSH () {
mysql -u${MYSQL_USER} -P 123456 -h${MASTER_IP} -e
}
select NAME in master slave
do
case $NAME in
master)
sed -i "/\[mysqld\]/alog-bin=mysql-bin\nserver-id=${SERVER_ID}" /etc/my.cnf.d/server.cnf
MYSQLZHU "grant all on *.* to root@"${SLVAE_IP}" identified by '123456';"
MYSQLZHU "grant replication slave on *.* to "${SLAVE_USER}"@"${SLVAE_IP}" identified by '123456';"
MYSQLZHU "flush privileges;"
;;
slave)
sed -i "/\[mysqld\]/aserver-id=${SERVER_ID}" /etc/my.cnf.d/server.cnf
MYSQLCONG "stop slave;"
MYSQLCONG "change master to
master_host=\""${MASTER_IP}"\",
master_user=\""${SLAVE_USER}"\",
master_password=\""123456"\",
master_log_file=\""${MASTER_LOG_FILE}"\",
master_log_pos=${MASTER_LOG_POS};"
MYSQLCONG "start slave;“
;;
*)
exit 1
esac
done