Mysql(四)基于MHA的Mysq高可用架构搭建

本文详细介绍了如何使用MHA在三个服务器上搭建MySQL高可用架构,包括在每个服务器上配置MySQL,设置主从复制,进行手动和自动故障切换的测试,以及VIP漂移的配置和验证。
摘要由CSDN通过智能技术生成

基于MHA的Mysq高可用架构搭建

实验环境:
server1 master 172.25.66.1
server2 slave(备master)172.25.66.2
server3 slave 172.25.66.3
server4 MHA 172.25.66.4

注意:在做此实验之前必须保证数据一致,所以清空之前的实验数据,重新初始化,保证三个虚拟机的数据一致,不会影响之后的实验结果

(一)在server1上配置mysql
1.重新在server1编辑mysql服务

[root@server1 ~]# systemctl stop mysqld
[root@server1 ~]# vim /etc/my.cnf

在这里插入图片描述
配置文件的内容如下:

server-id=1
gtid_mode=ON
enforce_gtid_consistency=ON
log_bin=binlog
log_slave_updates=ON

在这里插入图片描述
2.清空之前的msyql的数据并重新启动mysqld服务

[root@server1 ~]# cd /var/lib/mysql
[root@server1 mysql]# ls
[root@server1 mysql]# rm -rf *
[root@server1 mysql]# systemctl restart mysqld

在这里插入图片描述
3.查看mysql密码并修改密码

[root@server1 mysql]# grep password /var/log/mysqld.log 
[root@server1 mysql]# mysql -p
Enter password: #输入初始化密码(查看密码时最新的)
mysql> alter user root@localhost identified by 'Bgg+2019';

在这里插入图片描述
4.授予用户repl权限

mysql> GRANT REPLICATION SLAVE ON *.* TO repl@'172.25.66.%' IDENTIFIED BY 'Bgg+2019';
mysql> SHOW MASTER STATUS;

在这里插入图片描述

(二)在server2上配置mysql
1.重新在server2编辑mysql服务

[root@server2 ~]# systemctl stop mysqld
[root@server2 ~]# vim /etc/my.cnf

在这里插入图片描述
配置文件的内容如下:

server-id=2
gtid_mode=ON
enforce_gtid_consistency=ON
log_bin=binlog
log_slave_updates=ON

在这里插入图片描述
2.清空之前的msyql的数据并重新启动mysqld服务

[root@server2 ~]# cd /var/lib/mysql
[root@server2 mysql]# ls
[root@server2 mysql]# rm -rf *
[root@server2 mysql]# systemctl restart mysqld

在这里插入图片描述
3.查看mysql的初始化密码并修改密码

[root@server2 mysql]# grep password /var/log/mysqld.lo
[root@server2 mysql]# mysql -p
mysql> alter user root@localhost identified by 'Bgg+2019';

在这里插入图片描述
4.配置slave(注意master的信息要对)并开启slave

mysql> show databases;
mysql> CHANGE MASTER TO MASTER_HOST='172.25.66.1',MASTER_USER='repl',MASTER_PASSWORD='Bgg+2019',MASTER_AUTO_POSITION=1;
mysql> START SLAVE;
mysql> SHOW SLAVE STATUS\G;

在这里插入图片描述
(三)在server3上配置mysql服务
1.首先在server3中配置mysql服务并开启服务

[root@server3 ~]# tar xf mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar 
[root@server3 ~]#  yum install -y mysql-community-client-5.7.24-1.el7.x86_64.rpm mysql-community-common-5.7.24-1.el7.x86_64.rpm mysql-community-libs-5.7.24-1.el7.x86_64.rpm mysql-community-libs-compat-5.7.24-1.el7.x86_64.rpm mysql-community-server-5.7.24-1.el7.x86_64.rpm

在这里插入图片描述
2.查看是否有缓存的数据,发现没有数据,此时开启mysql服务并查看是否有数据

[root@server3 ~]# cd /var/lib/mysql
[root@server3 mysql]# ls
[root@server3 mysql]# systemctl start mysqld
[root@server3 mysql]# ls

在这里插入图片描述
3.编辑mysqld配置文件并重启mysqld服务

[root@server3 mysql]# vim /etc/my.cnf
[root@server3 mysql]# systemctl restart mysqld

在这里插入图片描述
在这里插入图片描述
4.查看mysql的初始化密码并修改密码

[root@server3 mysql]# grep password /var/log/mysqld.log 
[root@server3 mysql]# mysql -p
mysql> alter user root@localhost identified by 'Bgg+2019';

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值