前期准备
三台服务器,分别为节点一、二、三,节点一为主服务器,节点二、三为从服务器,
节点一: 172.27.0.13 (主)
节点二: 172.27.0.11 (从–安装manager)
节点三: 172.27.0.17 (从)
在他们之间配置好基于gtid主从复制,可以参考MySQL主从复制(日志点和gtid)
MHA是基于SSH服务的,所以我们先在集群的所有服务器中建立ssh免认证登录,这样使用ssh链接的时候就不需要在输入密码了,具体操作如下:
1. 在节点一上执行 ssh-keygen,然后三次回车后就生成了ssh秘钥
mkdir -p /home/mysql_mha三次配置完成后,可以在服务器上执行ssh链接看是否还需要输入密码,如果不需要则成功
最后登录其他两个服务器重复上面两个步骤
安装软件包
一、下载node和manager软件包wget https://raw.githubusercontent.com/linyue515/mysql-master-ha/master/mha4mysql-node-0.57-0.el7.noarch.rpm
wget https://raw.githubusercontent.com/linyue515/mysql-master-ha/master/mha4mysql-manager-0.57-0.el7.noarch.rpm
三、安装node软件包
node包需要在三台服务器都安装,安装之前需要先安装perl的几个依赖包(perl-DBD-MySQL ncftp perl-DBI.x86),,然后在安装node.执行下面两个命令yum install -y perl-DBD-MySQL ncftp perl-DBI.x86
rpm -ivh mha4mysql-node-0.57-0.el7.noarch.rpm
ps: 安装node或者manager包的时候,必须要相关的依赖包,确定相关的依赖包安装成功了
配置MHA
在安装有manager包的节点二,创建一个放MHA的配置目录,其他节点上不需要配置
1. 在主服务器(节点一)上建立一个mha用户(就可以直接同步到所有从服务器,配置文件中需要)grant all privileges on *.* to ‘mha’@’172.27.0.%’ identified by ‘Mha123456.’;
检测mha配置是否正确
masterha_check_ssh –conf=/opt/soft/mha/mysql_mha.cnf
后台启动mha
nohup masterha_manager –conf=/opt/soft/mha/mysql_mha.cnf &
启动后,主服务器(节点一)会自动分配相应的虚拟ip,如果不分配就按照下面方式手动分配
ifconfig eth0:1 172.27.0.19/20
分别查看节点一和节点三的虚拟IP是否已经转移
在节点二上查看当前的主从复制链路,确认主服务器已经转移到节点三

ps: 还可以测试一下这种架构的压力和其他故障处理的情况,比如加大主库的并发写入;停止一台从库,让二进制文件落后主库,看最后会不会恢复等等.
文章知识点与官方知识档案匹配,可进一步学习相关知识MySQL入门技能树运维与架构主从复制31269 人正在系统学习中 相关资源:【内存遍历工具】Cheat.Engine.V5.4.简体中文版-专业指导文档类…
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!