mysql mgr集群部署

news2024/12/25 23:49:51

一、前言

      mysql mgr集群是为了实现mysql高可用,分为单主集群和多主集群,单主集群只有一个主节点可写,节点发生故障时,自动进行主从的故障切换,多主集群所有节点都可写,当节点发生故障时,将故障节点剔除出集群

主机信息

nameipport
mysql0110.1.60.1213306、33061
mysql0210.1.60.1223306、33061
mysql0310.1.60.1233306、33061

二、部署(单主节点)

每个节点部署mysql服务

mysql官网找到mysql5.7版本yum包,使用wget命令下载

wget -i -c 

http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

安装mysql yum源

 yum -y install mysql57-community-release-el7-10.noarch.rpm

 更改mysql yum源配置,将需要安装得5.7版本的gpgchenck项改为0

执行yum安装mysql

 yum -y install mysql-community-server

启动mysql服务

systemctl start mysqld && systemctl enable mysqld

通过mysql日志文件查看初始登录密码

cat /var/log/mysqld.log |grep password

使用从日志中得到得密码登录数据库

 mysql -u root -p

修改默认密码

alter user 'root'@'localhost' identified by '新密码';

flush privileges;

编辑配置文件

vi /etc/my.cnf

[mysqld]

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

server-id=1      #每个节点配置的id不能相同
gtid_mode=ON    #开启gtid
enforce_gtid_consistency=ON     #开启gtid的强一致性,mgr集群配置必须开启,用以保证事务的一致性
binlog_checksum=NONE    #禁用二进制事件校验

log_bin=binlog         #开启binlog日志
log_slave_updates=ON   #开启级联复制
binlog_format=ROW      #以行的形式记录,mgr集群必须配置以行的形式记录
master_info_repository=TABLE   
relay_log_info_repository=TABLE

transaction_write_set_extraction=XXHASH64   #server必须为每个事务收集写集合,使用XXHASH64哈希算法将其编码为散列
loose-group_replication_group_name="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"   #创建组名UUID,自定义编辑
loose-group_replication_start_on_boot=off    #server启动时不自启组复制,为了避免每次启动自动引导具有相同名称的第二个组,所以设置为OFF
loose-group_replication_local_address="10.1.60.121:33061"   #配置当前节点mgr服务地址和端口,该端口为自定义的端口
loose-group_replication_group_seeds="10.1.60.121:33061,10.1.60.122:33061,10.1.60.123:33061"
#配置mgr集群所有节点               
loose-group_replication_bootstrap_group=off
report_host=10.1.60.121   #配置当前节点地址
report_port=3306        #配置mysql服务端口

重启mysql服务使配置生效

systemctl restart mysqld

各节点配置mgr插件,并设置同步账号

mysql -u root -p

安装mgr插件

INSTALL PLUGIN group_replication SONAME 'group_replication.so';

关闭binlog日志记录

set SQL_LOG_BIN=0;

创建mgr集群同步账号

create user mgr@'%' identified by '12345678';

设置账号权限

grant replication slave on *.* to mgr@'%';

flush privileges;

开启binlog日志记录

set SQL_LOG_BIN=1;

设置同步账号

CHANGE MASTER TO MASTER_USER='mgr', MASTER_PASSWORD='12345678' FOR CHANNEL 'group_replication_recovery';

创建mgr集群

选一个主节点创建mgr集群,这里选用10.1.60.121为主节点

mysql -u root -p

配置后面加入集群的节点以该主节点为基准

SET GLOBAL group_replication_bootstrap_group=ON;

作为首个节点启动mgr集群

START GROUP_REPLICATION;
SET GLOBAL group_replication_bootstrap_group=OFF;

 查看mgr集群信息

SELECT * FROM performance_schema.replication_group_members;

其余两个节点执行以下命令加入mgr集群

START GROUP_REPLICATION;

查看mgr集群信息

 SELECT * FROM performance_schema.replication_group_members;

状态为online即正常 

查询mgr集群中,哪个节点为主节点

select variable_value from performance_schema.global_status where variable_name='group_replication_primary_member';

也可以通过查看是否为read_only确定主节点

show variables like '%read_only%';

 

至此mgr单主集群搭建完成,主节点可写,从节点可读,主节点发生故障后,会自动在从节点中选主

mgr集群节点发生故障,恢复后需要手动启动组复制功能才会从新加入集群中 

mysql -u root -p
START GROUP_REPLICATION;
SELECT * FROM performance_schema.replication_group_members;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1457637.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【RPG Maker MV 仿新仙剑 战斗场景UI (二)】

RPG Maker MV 仿新仙剑 战斗场景UI 二 战斗指令菜单原仙剑战斗指令图RMMV战斗指令对应代码战斗指令菜单代码效果 战斗指令菜单 原仙剑战斗指令菜单是使用方向键控制,同时按照使用情况正好对应四个指令和四个方向,同时没有选中的菜单用黑色透明图片覆盖&…

层级关联,审批人功能

一个需求要求选择一级&#xff0c;下方展示一级的效果 后端给了审批人数据&#xff0c;但是数据需要单独处理 <template><div class"box"><el-form :model"ruleForm" :rules"rules" ref"ruleForm" label-width"…

【鸿蒙系统学习笔记】ArkTS开发语言

一、背景 ArkTS是HarmonyOS优选的主力应用开发语言。ArkTS围绕应用开发在TypeScript&#xff08;简称TS&#xff09;生态基础上做了进一步扩展&#xff0c;继承了TS的所有特性&#xff0c;是TS的超集。 二、基本语法 2.1、基本语法介绍 ArkTS的基本组成&#xff0c;资料来自…

【洛谷题解】P8627 [蓝桥杯 2015 省 A] 饮料换购

题目链接&#xff1a;[蓝桥杯 2015 省 A] 饮料换购 - 洛谷 题目难度&#xff1a;普及- 涉及知识点&#xff1a;换购 题意&#xff1a; 分析&#xff1a;一直换购直至瓶盖数<3为只 AC代码&#xff1a; #include<bits/stdc.h> using namespace std; int main() {i…

极其抽象的SpringSecurity理解

原始&#xff1a;A → B Security&#xff1a;A → S → B 太抽象了&#xff0c;看不懂啊T_T 抽象故事 故事大概&#xff1a;C是一个大区&#xff0c;拥有巨大的火力&#xff08;C准备联合B吞并掉A&#xff09;&#xff0c;A得到了这个消息&#xff0c;…

java:Java中的逻辑控制

顺序结构 在Java中&#xff0c;顺序结构是指代码按照从上到下的顺序依次执行。以下是一个简单的Java程序示例&#xff0c;展示了顺序结构的使用&#xff1a; public class SequenceStructureExample {public static void main(String[] args) {// 声明和初始化变量int num1 10…

51-2 万字长文,深度解读端到端自动驾驶的挑战和前沿

去年初&#xff0c;我曾打算撰写一篇关于端到端自动驾驶的文章&#xff0c;发现大模型在自动驾驶领域的尝试案例并不多。遂把议题扩散了一点&#xff0c;即从大模型开始&#xff0c;逐渐向自动驾驶垂直领域靠近&#xff0c;最后落地到端到端。这样需要阐述的内容就变成LLM基础模…

SAP PP学习笔记 - 豆知识05 - 如何定义品目状态,如何删除品目,如何扩张品目

本章讲SAP 中一些常用操作。 - 设定品目状态&#xff1a;控制让一个品目&#xff08;物料&#xff09;准备好了以后再提供出来给大家 - 删除品目&#xff1a;一般来说是逻辑删除&#xff0c;但是做了归档之后&#xff0c;也可以物理删除 - 扩张品目&#xff1a;品目的View非…

《最新出炉》系列初窥篇-Python+Playwright自动化测试-19-处理鼠标拖拽-中篇

1.简介 上一篇中&#xff0c;主要是介绍了拖拽的各种方法的理论知识以及实践&#xff0c;今天宏哥讲解和分享一下划取字段操作。例如&#xff1a;需要在一堆log字符中随机划取一段文字&#xff0c;然后右键选择摘取功能。 2.划取字段操作 划取字段操作就是在一段文字中随机选…

[BUUCTF]-PWN:axb_2019_heap解析(格式化字符串漏洞,unlink,off by one)

查看保护 查看ida 大致就是alloc创建堆块&#xff0c;free释放堆块&#xff0c;以及fill填充堆块 解释get input函数&#xff1a; 这里解释一下get input函数 这个函数是人工编写的&#xff0c;其中*v410那里是把接受到的换行符变为\x00&#xff0c;并且结束输入。 v3那里&a…

单调队列和优先队列

本篇记录下一下关于单调队列和优先队列&#xff08;堆&#xff09;的方法以及解题思路. 文章目录 一. 单调队列1. 绝对差不超过限制得最长连续子数组2. 跳跃游戏 VI3. 设计自助结算系统4. 和至少为k的最短子数组5. 满足不等式的最大值 二. 优先队列1. 最后一块石头的重量2. 数据…

CoWoS封装产能短缺挑战AI芯片市场需求

随着人工智能、云计算、大数据分析和移动计算等技术的蓬勃发展&#xff0c;现代社会对计算能力的需求日益高涨。然而&#xff0c;在先进制程突破3纳米后&#xff0c;晶圆尺寸遭遇缩放极限&#xff0c;制造成本也随之上升。因此&#xff0c;除了继续研发先进制程外&#xff0c;半…

网络防火墙综合实验

备注&#xff1a;电信网段15.1.1.0 移动网段14.1.1.0 办公区 11.1.1.0 生产区 10.1.1.0 服务区 13.1.1.0 公网 1.1.1.1 和 2.2.2.2 需求&#xff1a; 1、办公区设备可以通过电信链路和移动链路上网&#xff08;多对多nat&#xff0c;并且需要保留一个公网ip&#xff09; 2、…

C#,入门教程(05)——Visual Studio 2022源程序(源代码)自动排版的功能动画图示

上一篇&#xff1a; C#&#xff0c;入门教程(04)——Visual Studio 2022 数据编程实例&#xff1a;随机数与组合https://blog.csdn.net/beijinghorn/article/details/123533838 新来的徒弟们交上来的C#代码&#xff0c;可读性往往很差。 今天一问才知道&#xff0c;他们居然不…

使用go-llama.cpp 运行 yi-01-6b大模型,使用本地CPU运行,速度挺快的

1&#xff0c;视频地址 2&#xff0c;关于llama.cpp 项目 https://github.com/ggerganov/llama.cpp LaMA.cpp 项目是开发者 Georgi Gerganov 基于 Meta 释出的 LLaMA 模型&#xff08;简易 Python 代码示例&#xff09;手撸的纯 C/C 版本&#xff0c;用于模型推理。所谓推理…

CMake无Name和Value部分界面

鼠标会变成以下 拉开后就 出现想要的部分

SpaceX 发射军用卫星,用于跟踪高超音速导弹

上周三&#xff0c;导弹防御局的两颗原型卫星和美国太空军的四颗导弹跟踪卫星搭乘 SpaceX 猎鹰 9 号火箭从佛罗里达州太空海岸进入轨道。 这些卫星是新一代航天器的一部分&#xff0c;旨在跟踪中国或俄罗斯发射的高超音速导弹&#xff0c;以及可能来自正在开发自己的高超音速武…

蓝桥杯:C++贪心算法、字符串函数、朴素模式匹配算法、KMP算法

贪心算法 贪心(Greedy)算法的原理很容易理解&#xff1a;把整个问题分解成多个步骤&#xff0c;在每个步骤都选取当前步骤的最优方案&#xff0c;直到所有步骤结束&#xff1b;每个步骤都不考虑对后续步骤的影响&#xff0c;在后续步骤中也不再回头改变前面的选择。 贪心算法…

折叠式隐形纱窗原理

如果出现上轨与下轨不同步&#xff0c;可分析是否是某些绳子被拉长导致的。 以上图现象为例&#xff0c;可调整折叠纱窗一侧上部分的4跟组织线长度。从而解决上轨与下轨拉动不同步的问题。

【天衍系列 01】深入理解Flink的 FileSource 组件:实现大规模数据文件处理

文章目录 01 基本概念02 工作原理03 数据流实现04 项目实战4.1 项目结构4.2 maven依赖4.3 StreamFormat读取文件数据4.4 BulkFormat读取文件数据4.5 使用小结 05 数据源比较06 总结 01 基本概念 Apache Flink 是一个流式处理框架&#xff0c;被广泛应用于大数据领域的实时数据…