MySQL的高可用解决方案其实有很多种(想了解自行百度),这里只说其中一种:MHA。这也是当前比较主流的方案。
在搭建MHA之前应该先保证已经安装配置好了MySQL的主从/集群。因为既然是高可用架构,那么针对的肯定是多台设备,单机的话谈不上高可用。
MySQL的主从搭建过程这里就不说了,可以看这里: MySQL搭建主从架构
本次搭建环境:centos7.8 + mysql5.7.31
现在的架构是 :
101:主节点
102:从节点1
103:从节点2
手动将101的MySQL主节点关闭,在102的节点上查看VIP,发现配置的VIP:192.168.232.105已经从101节点漂移到102节点了。
然后在103的节点上可以看到主节点确实已经变成了 102
到此,MHA 搭建大功告成啦!
MHA 的切换过程,共包括以下的步骤:
最后说明一点,宕机的节点,重启后由于MySQL机制问题不会自动加入到集群中,需要我们手动加入。
修改mysql的所有节点mysql的主配置文件 ( /etc/my.cnf )
Master 节点
Slave1,Slave2节点
MHA官网:https://code.google.com/archive/p/mysql-master-ha/
GitHub地址:https://github.com/yoshinorim/mha4mysql-manager
文档:https://github.com/yoshinorim/mha4mysql-manager/wiki
当一个 master 崩溃时,MHA 会恢复下面的 rest slave。
MHA 由 MHA Manager 和 MHA Node 组成,如下所示:
下载地址:https://github.com/yoshinorim/mha4mysql-manager/wiki/Downloads
下载地址:https://github.com/yoshinorim/mha4mysql-node/releases/tag/v0.58
/opt/mysql-mha/master_ip_failover ,下面配置文件中会用到
给该脚本添加可执行权限:
candidate_master=1
check_repl_delay=0
第一次配置需要在master节点上手动启动虚拟IP,标签要和master_ip_faioverl配置文件中my $key = '1'一样
先在当前的主库服务器slave1上查看二进制日志和同步点
再在 原master 服务器上执行同步 *** 作
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)