无标题

Posted cPen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无标题相关的知识,希望对你有一定的参考价值。

文章目录

项目名称:双vip的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上配置



检验结果
router3
router4
实际配置
由于是双VIP,此处我们需要配置两个vip,让master和 backup互为主主,最大的利用资源

做master - - - VI_1
删除从virtual server开始的所有(从这里开始主要是 keepalived的负载均衡作用,此次我们只使用keepalived的高可用)
注释 vrrp_strict # vrrp_strict
修改状态为backup state MASTER
修改网络接口与本机一致 - - - 一致则不用修改 interface eth33
修改virtual_router_id — 一致
修改优先级 - - -优先级高于backup
修改虚拟ip地址vip - - - 一致
做backup - - - VI_2
修改vrrp_instance 为 VI_2
修改状态为backup state BACKUP
修改网络接口与本机一致 - - - 一致则不用修改 interface eth33
修改virtual_router_id — 一致
修改优先级 - - - 优先级低于master
修改虚拟ip地址vip - - - 一致

.router3(master)配置
.router4(backup)配置

                3.检验结果。

router3(master):


router4(slave):


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

以上是关于无标题的主要内容,如果未能解决你的问题,请参考以下文章

Qt:无标题栏无边框程序的拖动和改变大小

无标题

MFC小知识一:将对话框设置为无边框无标题栏初始最大化样式

当指标为 Null 时,将“无”更改为无(“”)

“无不在”与“无不在”

HttpClient.PostAsync 无响应且无异常