MySQL--MHA高可用集群部署!

本文介绍了如何配置MySQL的主从复制,并使用MHA(Master High Availability)实现高可用性。内容包括MHA的概念、组成和特点,详细步骤涉及授权、设置只读、安装MHA组件、配置SSH免密登录以及创建VIP脚本等。实验环境中,搭建了一主两从的MySQL服务器集群,并在管理节点上安装了MHA-manager。
摘要由CSDN通过智能技术生成

MHA的概念

在这里插入图片描述

MHA 的组成
在这里插入图片描述
MHA特点
在这里插入图片描述

主从复制+MAH
https://editor.csdn.net/md/?articleId=118904445
实验环境

//
 MySQL服务器
master 192.168.142.142 安装 node 组件
slave1 192.168.142.143 安装 node 组件
slave2 192.168.142.144 安装 node 组件

MHA-manager 
192.168.142.141  管理节点,安装 manager 组件与node组件

配置软连接

做好主从复制并重启后,配置软连接
将mysql命令和mysql日志文件软连接到/usr/sbin/便于系统识别

// 
[root@slave2 ~]# ln -s /usr/local/mysql/bin/mysql /usr/sbin/
[root@slave2 ~]# ln -s /usr/local/mysql/bin/mysqlbinlog /usr/sbin/

配置MySQL一主两从

为防止master挂掉myslave能及时替换,从服务器也需要提权
授权给两个用户myslave和mha

//
grant replication slave on *.* to 'myslave'@'192.168.142.%' identified by '123123';
grant all privileges on *.* to 'mha'@'192.168.142.%' identified by 'manager';

以下三条都是为了防止MHA检查MySQL检查不通过,理论可不加

// 
grant all privileges on *.* to 'mha'@'master' identified by 'manager';
grant all privileges on *.* to 'mha'@'slave1' identified by 'manager';
grant all privileges on *.* to 'mha'@'slave2' identified by 'manager';

所有从库开启只读功能,刷新权限表

// 
mysql> set global read_only=1;
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

测试检查
在这里插入图片描述

安装MHA

所有服务器安装node,manager服务器还要安装manager组件
在此之前先安装环境

// 
[root@manager ~]# yum -y install epel-release --nogpgcheck 
[root@manager ~]# yum install -y perl-DBD-MySQL \
> perl-Config-Tiny \
> perl-Log-Dispatch \
> perl-Parallel-ForkManager \
> perl-ExtUtils-CBuilder \
> perl-ExtUtils-MakeMaker \
> perl-CPAN

同步所有服务器时间

// 
[root@manager ~]# ntpdate ntp.aliyun.com  ##所有服务器都做
24 Jul 19:42:29 ntpdate[92335]: step time server 203.107.6.88 offset -1.348249 sec

安装node和manager

把node组件压缩包拖到所有服务器的opt下,并解压安装

// 
[root@manager opt]# tar xf mha4mysql-node-0.57.tar.gz -C /root
[root@manager opt]# cd /root/mha4mysql-node-0.57/
[root@manager mha4mysql-node-0.57]# perl Makefile.PL
[root@manager mha4mysql-node-0.57]# make && make install

安装好node组件后有这几个脚本
在这里插入图片描述
把manager压缩包拖到manager服务器的opt下,并解压安装

// 
[root@manager opt]# tar xf mha4mysql-manager-0.57.tar.gz -C /root   //解压还原
[root@manager opt]# cd /root/mha4mysql-manager-0.57/  
[root@manager mha4mysql-manager-0.57]# perl Makefile.PL make && make install

在这里插入图片描述
在这里插入图片描述

在所有服务器上设置ssh免密登录

//
ssh-keygen -t dsa
ssh-copy-id 192.168.142.141
ssh-copy-id 192.168.142.142
ssh-copy-id 192.168.142.143
ssh-copy-id 192.168.142.144

在这里插入图片描述

亲测无密码认证

使用脚本管理VIP

// 
[root@manager ~]# cp -ra /root/mha4mysql-manager-0.57/samples/scripts/ /usr/local/bin
[root@manager ~]# ls /usr/local/bin/
[root@manager ~]# ls /usr/local/bin/scripts/
[root@manager ~]# cp /usr/local/bin/scripts/master_ip_failover /usr/local/bin
[root@manager ~]# vim /usr/local/bin/master_ip_failover

在这里插入图片描述

创建MHA软件目录

// 
[root@manager bin]# mkdir /etc/masterha   //创建软件目录
[root@manager bin]# cp /root/mha4mysql-manager-0.57/samples/conf/app1.cnf /etc/masterha/   //拷贝配置文件
[root@manager bin]# vim /etc/masterha/app1.cnf   //修改为以下配置

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值