MHA实现MySQL8 高可用

        MHA 在监控到 master 节点故障时,会提升其中拥有最新数据的 slave 节点成为新的master 节点,在此期间,MHA 会通过于其它从节点获取额外信息来避免一致性方面的问题。MHA 还提供了 master 节点的在线切换功能,即按需切换 master/slave 节点

工作原理

MHA工作原理总结为以下几条:

(1) 从宕机崩溃的 master 保存二进制日志事件(binlog events);

(2) 识别含有最新更新的 slave ;

(3) 应用差异的中继日志(relay log) 到其他 slave ;

(4) 应用从 master 保存的二进制日志事件(binlog events);

(5) 提升一个 slave 为新 master ;

(6) 使用其他的 slave 连接新的 master 进行复制。

实现过程(实验机器均为centos 7.x )

        MHA 对 MYSQL 复制环境有特殊要求,例如各节点都要开启二进制日志及中继日志,各从节点必须显示启用其read-only属性,并关闭relay_log_purge功能等,这里对配置做事先说明。(所以至少要四台机器

机器名称 IP配置 服务角色 备注

manager

192.168.1.130

manager控制器

用于监控管理

master 192.168.1.131 数据库主服务器 开启bin-log relay-log关闭relay_log
slave1 192.168.1.132 数据库从服务器 开启bin-log relay-log 关闭relay_log
slave2 192.168.1.133 数据库从服务器 开启bin-log relay-log 关闭relay_log

一、安装CentOS7

二、更改镜像源 

cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

删除和更新镜像源

yum clean all

yum repolist

三、关闭防火墙、禁用SELiunx

setenforce 0
getenforce 
        disabled

 

四、修改主机名和hosts解析

hostnamectl set-hostname 主机名

五、时间同步 

六、配置MySQL 8 一主两从 (记得主从三台都要配)

上传MySQL8安装包并发送到其他从主机

 解压到对应文件夹,方便删除

装服务器 ,删除不用的依赖

 yum install mysql-community-client-8.0.18-1.el7.x86_64.rpm mysql-community-common-8.0.18-1.el7.x86_64.rpm mysql-community-libs-8.0.18-1.el7.x86_64.rpm mysql-community-server-8.0.18-1.el7.x86_64.rpm

 

节点配置

vi /etc/my.cnf

主节点

server_id = 131

skip_name_resolve                //关闭名称解析(非必须)
gtid-mode = on                    //启用gtid类型
enforce-gtid-consistency = true //强制GTID的一致性
log-slave-updates = 1            //slave更新是否记入日志
log-bin = mysql-bin                //开启二进制日志
relay-log = relay-log            //开启中继日志

两个次结点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值