ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

一键配置mysql主从

2020-04-26 20:40:09  阅读:274  来源: 互联网

标签:一键 echo cnf sed master mysql mariadb 主从


首先配置主服务器

#!/bin/bash
echo "关闭防火墙"
systemctl stop firewalld.service
setenforce 0
yum -y install mariadb mariadb-server &> /dev/null
if [ $? -eq 0 ];then
	echo "mysql安装成功"
else
	echo "mysql安装失败,请重新安装"
	yum -y install mariadb mariadb-server &> /dev/null
fi
sed -i '10aserver-id=1' /etc/my.cnf
sed -i '11alog-bin=mysql-bin' /etc/my.cnf
sed -i '12arelay-log=relays' /etc/my.cnf
systemctl start mariadb
if [ $? -eq 0 ];then
	echo "mysql启动成功"
else
	echo "mysql启动失败,请重启"
	systemctl restart mariadb
fi
mysql -e "grant all on *.* to tom@'%' identified by '123456';"
if [ $? -eq 0 ];then
	echo "授权成功"
else
	echo "授权失败,请重试"
	mysql -e "DROP  USER tom@'%';"
	mysql -e "grant all on *.* to tom@'%' identified by '123456';"
fi
mysql -e "flush privileges;"
mysql -e "show master status;"

然后再进行从服务器的配置

#!/bin/bash
echo "关闭防火墙"
systemctl stop firewalld.service
setenforce 0
yum -y install mariadb mariadb-server &> /dev/null
if [ $? -eq 0 ];then
	echo "mysql安装成功"
else
	echo "mysql安装失败,请重新安装"
	yum -y install mariadb mariadb-server &> /dev/null
fi
sed -i '10aserver-id=2' /etc/my.cnf
sed -i '11alog-bin=mysql-bin' /etc/my.cnf
sed -i '12arelay-log=relays' /etc/my.cnf
systemctl start mariadb
if [ $? -eq 0 ];then
	echo "mysql启动成功"
else
	echo "mysql启动失败,请重启"
	systemctl restart mariadb
fi
mysql -e "stop slave;"
	echo "停止slave"
read -ep "请输入主数据库的ip:" ip
read -ep "请到主数据库查看log_file,并且输入:" file
read -ep "请到主数据库查看pos,并且输入:" pos
mysql -e "change master to master_user='tom', master_host='$ip', master_password='123456', master_log_file='$file', master_log_pos=$pos;"
mysql -e "start slave;"
echo "启动slave"
IO=$(mysql -e "show slave status \G;" | grep Slave_IO_Running | awk '{print $2}')
SQL=$(mysql -e "show slave status \G;" | grep Slave_SQL_Running | awk '{print $2}')
if [ $IO == "Yes" -a $SQL == "Yes" ];then
	echo "主从配置成功"
else
	echo "主从配置失败,请检查配置"
fi

标签:一键,echo,cnf,sed,master,mysql,mariadb,主从
来源: https://blog.csdn.net/mazhiwb/article/details/105757187

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有