目录
1.MHA是什么以及作用
2.工作原理
3.案例
1.MHA是什么以及作用
MHA(Master High Availability)
MySQL高可用环境下故障切换和主从复制的软件
MHA 的出现就是解决MySQL单点故障
MySQL故障切换过程中 MHA能做到0-30秒内自动完成故障切换操作
MHA能在故障切换的过程中最大程度上保证数据的一致性
2.工作原理
从宕机崩溃的master保存二进制日志事件
识别含有最新的更新slave日志
应用差异的中继日志到其他的slave
应用从master保存的二进制日志事件
提升一个salve为新的master
使其他的slave连接行的master进行复制
3.案例
MHA manager 192.168.177.115
master 192.168.177.112
slave1 192.168.177.113
slave2 192.168.177.114
主中修改my.cnf

从中修改my.cnf


分别建立软链接
![]()
分别在数据库授权

主中查看二进制文件和同步点

从中写change并启动slave show一下 IO和SQL都为YES

两从库设为只读

主中插入数据

所有安装MHA依赖环境
![]()

所有安装node
![]()
![]()
![]()
MHA manager安装manager
![]()
![]()
![]()
所有设置免密登录
MHA manger

主

从


在 manager 节点上复制相关脚本到/usr/local/bin 目录(cp后会有四个文件)

cp /usr/local/bin/scripts/master_ip_failover /usr/local/bin并且vim master_ip_failover

创建 MHA 软件目录并拷贝配置文件 这里使用app1.cnf配置文件来管理mysql节点服务器

vim /etc/masterha/app1.cnf 删除原所有内容 添加如图内容

测试ssh

测试主从

启动MHA

查看MHA状态和日志





![P3183 [HAOI2016] 食物链](https://img-blog.csdnimg.cn/img_convert/885bb82396e1705f14c40c0cbdb12fa9.png)














