高可用MySQL集群的搭建

2022/3/22 2:30:45

本文主要是介绍高可用MySQL集群的搭建,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

项目名称:高可用MySQL集群的搭建
网络拓扑图


项目描述
        构建一个高可用的功能,并且实现读写分离的高效的MySQL集群,确保业务的稳定性;部署基于GTID的主从复制+读写分离;
项目步骤
        准备工作
                1.准备三台服务器(1主2从),都开启mysql服务;再准备两台机器作为中间件,用来读写分离,尽量三台服务器的数据库版本一致;
                2.master服务器和slave服务器都要开启二进制日志;master服务器和slave服务器的server_id不能相同,必须唯一;
                3.master和slave服务器都要关闭防火墙和selinux;
永久关闭防火墙

永久关闭selinux

 

 master配置
                1.创建用来复制二进制日志的用户;


                2.给从服务器授予获取二进制日志的权限;


                3.创建完全备份;

            4.将完全备份传输到slave1和slave2机器上;

备份成功


                5.开启二进制日志并设置server_id;


                6.重启MySQL服务;

 


        slave配置
                1.slave3和slave4导入备份;

 
                2.开启二进制日志并且设置server_id,(slave4做相同操作);


                3.重启MySQL服务;

 


                4.查看master2信息;


                5.在slave3和slave4上启用master2信息;

 

 

 

 

MASTER_USER是先前创建获取二进制日志文件的用户
MASTER_PASSWORD是先前创建获取二进制日志文件的用户的密码
MASTER_PORT端口号
MASTER_LOG_FILE二进制日志文件名
MASTER_LOG_POS位置号

                6.效果展示;

当SQL_Running和IO_Running都为Yes时,说明成功连接上master2
此时异步复制完成

        部署基于Gtid的主从复制(建立在异步复制基础上进行)
                1.关闭slave服务;


                2.slave3和slave4都要清除master2;


                3.配置文件信息;
master2配置

enforce_gtid_consistency 保证GTID安全的参数强制gtid一致性,开启后对于特定create table不被支持
slave3和slave4配置信息


                4.重启服务;

 至此基于Gtid的主从复制完成

        读写分离
                1.安装mysqlrouter;
rpm -ivh +mysqlrouter安装包

                2.关闭防火墙和selinux;

                3.修改配置文件;
查看配置文件


修改配置文件
router3

 

router4

刷新服务


                4.查看7001和7002端口是否启动;


listen状态表示成功

                5.创建用户和权限;
在master建立
第一种:可读可写的用户


第二种:仅可读用户

                6.测试连接;
所连接的时mysqlrouter ,划分权限的依靠用户所被授 予的权限,端口不能限制权限

                7.验证权限;
可读写用户

 

 

仅读用户


此时读写分离成功

 

        双vip高可用
                1.在router3(master)和router(backup)都安装 keepalived;


                2.修改配置文件;


router3上配置

 

 router4上配置

 
                3.检验结果。


注意:检结果之前一定先关闭防火墙,防止脑裂
此时双vip已完成



这篇关于高可用MySQL集群的搭建的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程