


(3)对所有数据库节点进行mysql授权

(4)在Master节点查看二进制文件和同步点

(5)在 Slave1、Slave2 节点执行同步操作

(6)两个从库必须设置为只读模式

(7)测试


安装依赖环境:







| master组件 | |
| masterha_check_ssh | 检查MHA的SSH的配置状况 |
| masterha_check_repl | 检查mysql的复制情况 |
| masterha_manager | 启动manager的脚本 |
| masterha_check_status | 检测MHA的运行状态 |
| masterha_master_monitor | 检测matser主机的情况,maters是否宕机。 |
| masterha_master_switch | 控制故障转移 |
| masterha_conf_host | 添加或者删除配置的server信息 |
| masterha_stop | 停止MAH脚本 |

| node组件 | |
| save_binary_logs | 保存和复制mater的二进制日志 |
| apply_diff_relay_logs | 识别二进制日志当中的差异事件,然后发送给其他的slvae |
| filter_mysqlbinlog | 去除不必要的回滚(MHA已经不用了) |
| purge_relay_logs | 同步之后清楚中继日志 (不会阻塞sql的线程) |




ssh-keygen -t rsa
ssh-copy-id 20.0.0.21
ssh-copy-id 20.0.0.23
ssh-keygen -t rsa
ssh-copy-id 20.0.0.21
ssh-copy-id 20.0.0.22
④在master上配置到数据库节点 slave1 和 slave2 的无密码认证
ssh-keygen -t rsa
ssh-copy-id 20.0.0.22
ssh-copy-id 20.0.0.23
(5)在manager节点上配置 MHA

| master_ip_failover | 自动切换时 VIP 管理的脚本 |
| master_ip_online_change | 在线切换时 vip 的管理 |
| power_manager | 故障发生后关闭主机的脚本 |
| send_report | 因故障切换后发送报警的脚本 |






②检测整个MHA主从连接是否正常



| --remove_dead_master_conf | 表示发生主从切换,老的主库的ip地址会从文件中删除 |
| /var/log/masterha/app1/manager.log | MHA的管理日志 |
| --ignore_last_failover | 表示只要发生宕机就会切换,忽略时间间隔(默认配置:若MHA检测到连续发生宕机,而且宕机的时间间隔不足8小时,不会进行自动切换) |




![]()



![]()

![]()



7、测试
