标签:一键 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. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。