centos7.7|centos7.7 mysql主从脚本

centos7.7 mysql主从

主:内存512
#!/bin/bash
#关闭防火墙以及selinux
stemctl stop firewalld.service &>/dev/null
echo “firewalld stop”
setenfore 0 &>/dev/null
echo “seten stop”
#安装部署mysql
yum -y install mariadb mariadb-server &>/dev/null
echo “mariadb install ok!!!”
#假如我执行完脚本想执行第二次 但配置文件里已存在 我要删除后才能执行 下一遍
sed -i ‘/server/d’ /etc/my.cnf
sed -i ‘/log_bin/d’ /etc/my.cnf
sed -i ‘/relay_log/d’ /etc/my.cnf
#修改配置文件
sed -i ‘/symbolic-links=0/a log_bin=mysql-bin \n server_id=1 \n relay_log=relay-logs’ /etc/my.cnf
#重新启动
systemctl restart mariadb.service
#进入并授权 mysql
mysql -e “grant all on . to ‘tom‘@’%’ identified by ‘123456’; ”
#查看master状态
mysql -e “show master status”;
centos7.7|centos7.7 mysql主从脚本
文章图片

centos7.7|centos7.7 mysql主从脚本
文章图片

从:内存512
#!/bin/bash
a=$(mysql -utom (写自己主里面授权的用户名)-p123456(授权的密码) -h10.0.0.36 -e ‘show master status; ’ | awk '/mysql-bin/{print KaTeX parse error: Expected 'EOF', got '}' at position 2: 1}?') b=(mysql -utom -p123456 -h10.0.0.36 -e ‘show master status; ’ | awk ‘/mysql-bin/{print $2}’)
#安装部署
yum -y install mariadb mariadb-server &>/dev/null
echo “安装成功!!!”
#假如我执行完脚本想执行第二次 但配置文件里已存在 我要删除后才能执行 下一遍
sed -i ‘/server/d’ /etc/my.cnf
sed -i ‘/relay/d’ /etc/my.cnf
sed -i ‘/log_bin/d’ /etc/my.cnf
#修改配置文件
sed -i ‘/symbolic-links=0/a relay_log=relay-logs \nserver_id=2 \nlog_bin=mysql-bin’ /etc/my.cnf
systemctl restart mariadb.service
echo “mariadb restart ok!!!”
mysql -e ‘stop slave; ’
echo “已停止同步服务”
【centos7.7|centos7.7 mysql主从脚本】#连接主服务器
mysql -e “change master to master_host=‘10.0.0.36’,master_user=‘tom’,master_password=‘123456’,master_log_file=' a ′ , m a s t e r l o g p o s = a',master_log_pos= a′,masterl?ogp?os=b; ”
#开启同步
mysql -e ‘start slave; ’
echo “启动同步成功!!!”
sleep 20 #等待20秒执行
mysql -e ‘show slave status \G’
centos7.7|centos7.7 mysql主从脚本
文章图片

centos7.7|centos7.7 mysql主从脚本
文章图片

    推荐阅读