mysql + MHA + centos7 高可用配置搭建

1、虚拟机服务器环境架构

虚拟机名称ip地址
主库服务器192.168.92.132
从库服务器1192.168.92.133
从库服务器2192.168.92.134
MHA192.168.92.135

2、安装需要的依赖包

1)以上所有服务器都需要安装

安装yum扩展包

wget http://mirrors.sohu.com/fedora-epel/epel-release-latest-7.noarch.rpm

yum install -y epel-release-latest-7.noarch.rpm

安装依赖   

yum list perl-DBD-MySQL ncftp perl-DBI

yum install -y perl-DBD-MySQL ncftp perl-DBI

 

2)只需要MHA 服务器安装

监控服务器安装依赖包 

yum install -y perl-Config-Tiny.noarch perl-Time-HiRes.x86_64 perl-Parallel-ForkManager perl-Log-Dispatch.noarch

 

3、安装MHA节点软件包

1)所有服务器需要安装

wget https://qiniu.wsfnk.com/mha4mysql-node-0.58-0.el7.centos.noarch.rpm

rpm -ivh mha4mysql-node-0.58-0.el7.centos.noarch.rpm

2)只MHA服务器安装

安装监控软件包   

wget https://qiniu.wsfnk.com/mha4mysql-manager-0.58-0.el7.centos.noarch.rpm

rpm -ivh mha4mysql-manager-0.58-0.el7.centos.noarch.rpm

 

4、配置各个服务器之间可免密登录

配置managernode各节点间的root用户的ssh公钥互信

1)以下命令所有服务器都需要执行

ssh-keygen -t rsa  一直默认回车安装就可以

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.92.132

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.92.133

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.92.134

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.92.134

2)检测是否成功

输入其他服务器的地址检测   ssh root@192.168.92.134,不用输入密码即可登录成功。

5、配置MHA Manager 端配置文件

mkdir  /etc/mha/;

vi app1.cnf;

根据自己的用户名密码,ip地址等配置。

注意:红线部分必须写,不能随意更改。

6、MHA 配置检测

执行ssh通信检测
在MHA Manager服务器上执行:masterha_check_ssh --conf=/etc/mha/app1.cnf

执行结果如图表示成功。

检测MySQL主从复制
在MHA Manager服务器上执行:masterha_check_repl --conf=/etc/mha/app1.cnf

如下图表示成功

7、启动MHA

启动执行

nohup masterha_manager --conf=/etc/mha/app1.cnf   --remove_dead_master_conf --ignore_last_failover < /dev/null >  /var/log/mha/app1/manager.log  2>&1 &

查看监控状态

masterha_check_status --conf=/etc/mha/app1.cnf

查看监控日志

tail -f /var/log/mha/app1/manager.log

8、服务器故障测试

将主库服务器停止   systemctl stop mysqld

然后在MHA服务器查询日志  tail -f /var/log/mha/app1/manager.log

可以看到原来的主库服务器由原来的  192.168.92.132 变为 192.168.92.133。

在另外一台从库查询状态,可以看到master服务器表更为新的主库服务器。

以上完成全部故障测试。

9、主服务器故障后恢复

恢复  systemctl start mysqld  

将恢复的主库做从库  change master to master_host='192.168.92.133',master_port=3306,master_user='root,master_password='root',master_log_file='mysql-bin.000003',master_log_pos=154;

启动  start slave;

新主库可查询到两台从库。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值