MySQL5.6 部署MHA

 2023-09-05 阅读 349 评论 0

摘要:趁着最近几天休息,就把之前没有补全的博客也来补补。 今天就和大家聊聊MySQL高可用方案中的MHA 在中小型架构中,针对MySQL做高可用 用的最多的可能就是keepalived/heartbeat+MySQL Replication。 这种方案配置简单、维护方便,并且也能实现MySQL的故

趁着最近几天休息,就把之前没有补全的博客也来补补。


今天就和大家聊聊MySQL高可用方案中的MHA

在中小型架构中,针对MySQL做高可用 用的最多的可能就是keepalived/heartbeat+MySQL Replication。

这种方案配置简单、维护方便,并且也能实现MySQL的故障转移,因此更多的倾向于此架构


MHA是什么?

MHA是由日本Mysql专家用Perl写的一套Mysql故障切换方案,来保障数据库的高可用性,它的功能是能在0-30s之内实现主Mysql故障转移(failover),MHA故障转移可以很好的帮我们解决从库数据的一致性问题,同时最大化挽回故障发生后数据的一致性。

MHA里有两个角色一个是node节点 一个是manager节点,要实现这个MHA,必须最少要三台数据库服务器,一主多备,即一台充当master,一台充当master的备份机,另外一台是从属机,这里实验为了实现更好的效果使用四台机器,需要说明的是一旦主服务器宕机,备份机即开始充当master提供服务,如果主服务器上线也不会再成为master了,因为如果这样数据库的一致性就被改变了


这里有一个mha的网络拓扑图,我们先来简单的介绍下

wKiom1X4V6HQmEVHAAR6Y7pgc9M478.jpg

先来聊聊这个拓扑图,文章开篇也有过介绍,MHA有两个重要的角色,一个是manager,另外一个是node;

从这个拓扑图中,或许大家不难分辨出如下信息

1
2
3
4
192.168.1.117    manager    管理节点
192.168.1.116    master     主库
192.168.1.118    slave01    从库 + 备库
192.168.1.119    slave02    从库


一、环境初始化

1、修改主机名

1
2
3
4
5
6
7
8
主机: manager执行命令
# sed -i 's/HOSTNAME=.*/HOSTNAME=manager/g' /etc/sysconfig/network && hostname manager
主机: master执行命令
# sed -i 's/HOSTNAME=.*/HOSTNAME=master/g' /etc/sysconfig/network && hostname master
主机: slave01执行命令
# sed -i 's/HOSTNAME=.*/HOSTNAME=slave01/g' /etc/sysconfig/network && hostname slave01
主机: slave02执行命令
# sed -i 's/HOSTNAME=.*/HOSTNAME=slave02/g' /etc/sysconfig/network && hostname slave02

2、主机名解析

1
2
3
4
5


     本文转自zys467754239 51CTO博客,原文链接http://blog.51cto.com/467754239/1695175:,如需转载请自行联系原作者



版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/195.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息