首页 > 代码库 > MHA 搭建

MHA 搭建

备注: 此处搭建的MHA 为 一主一从的环境

manager:192.168.162.132

master:192.168.162.134 node134

slave:192.168.162.133 node133

1.搭建主从:liyingdi.blog.51cto.com/6397405/1915010 MHA不支持基于gtid的复制模式

2.所以节点下载安装MHA的软件

  https://code.google.com/p/mysql-master-ha/wiki/Downloads?tm=2

  yum localinstall mha4mysql-*.rpm

 安装的过程会提示缺少其他的依赖包

3.所以节点安装所有相关的rpm包

http://down.51cto.com/data/2302565


4.在主库上创建用户及库:

 create database mhdb;

 创建复制用户:grant replication on *.* to ‘repl‘@‘192.168.162.%‘ identified ‘123456‘;

 创建连接用户:grant all plivileges on *.* to ‘admin1‘@‘192.168.162.%‘ identified ‘123456‘;

5.产生KEY

  cd .ssh/

 ssh-keygen  什么也不不填,一直回车

 安装完会出现下面几个文件

 技术分享

6.将.pub文件重定向

 

  cat id_rsa.pub >> authorized_keys

7.将ssh下所有的文件复制到node133上

scp .ssh/* node133:~/.ssh/

8.ssh下文件进行修改文件

  chmod 600 *

9.验证node134可以直接访问node133

  ssh node133

 可以直接进入133

 技术分享

10 主开始配置VIP

  创建文件夹mkdir /etc/masterha

  创建配置文件:

   技术分享

 appl.conf

 技术分享

 drop_vip.sh and init_vip

 技术分享

 其他几个主要文件主要配置VIP的IP

11.将配置好的这个masterha 整体复制到从的这个目录下

12启动mha

   masterha_manager --global_conf=/etc/masterha/masterha_default.conf -conf=/etc/masterha/app1.conf

问题一:

技术分享

出现错误,这里提示日志无法写入,原因是我们没有这个文件夹

创建相应文件夹 mkdir /var/log/masterha/app1/

问题二:

技术分享

无法、找到行这个mysqlbinlog

解决方法:先查找我们的mysqlbinlog在哪里:

  which mysqllbinlog

我的是在 

/usr/local/mysql/bin/mysqlbinlog

创建软连接:ln -s /usr/local/mysql/bin/mysqlbinlog /usr/bin/mysqlbinlog

再次启动成功技术分享

13 检测如果主挂了,会不会自动切换

 直接停掉主上的MySQL

 查看从的动态

技术分享

技术分享

切换成功!

MHA 搭建