新特性解读 | MySQL 8.0.16 组复制通讯协议的设置

MySQL8.0轻松完成GTID组复制 前言 之前文章介绍了MySQL8.0主从复制,以及衍生出来的主主复制(可点如下链接查看)。 MySQL8.0轻松搞定GTID主从复制 MySQL8.0轻松搞定GTID主主复制 今天来聊一聊MySQL8.0的组复制。 主从复制技术仅解决了数据同步的问题,如果主服务器宕机,意味着数据库管理员需要介入,应用系统可能需要修改数据库连接地址或者重启才能实现。 组复制只要不是大多数节点坏掉就可以继续工作,有自动检测机制,当不同节点产生资源争用冲突时,不会出现错误,按照先到者优先 阅读详情

作者:管长龙

标签:Group Communication System, Group Replication, High Availability

 

背景

在上一篇推文中,我们介绍了 MySQL Group Replication 8.0.16 支持信息碎片化功能来增强大型事务处理能力。

如果您想在组复制中使用该功能,则任何组成员的版本都不能低于 8.0.16!

简单地说就是由于低版本协议上不支持。MySQL 8.0.16 的组通讯开始支持新协议,简称“分段协议”,之前的版本中只有一种“压缩协议”。

如果多个成员想加入复制组,那么在协议匹配上遵循以下原则:

  1. 现有复制组成员和新加入成员版本相同,加入成功。

  2. 低版本成员想加入高版本的组会被驱逐,加入失败。

  3. 高版本的成员想加入低版本的组,单独加入成功,多个加入失败。

例如:

  • 一个 MySQL Server 8.0.16 实例可以成功加入使用通信协议版本 5.7.24 的组。

  • 一个 MySQL Server 5.7.24 实例无法成功加入使用通信协议版本 8.0.16 的组。

  • 两个 MySQL Server 8.0.16 实例无法同时加入使用通信协议版本 5.7.24 的组。

  • 两个 MySQL Server 8.0.16 实例可以同时加入使用通信协议版本 8.0.16 的组。

 

新增 UDF

为了能让高版本的复制组更便于加入低版本的成员,MySQL 8.0.16 新增两个 UDF。

您可以使用两个新的 UDF 命令去管理组通信协议:

1. group_replication_set_communication_protocol(new_protocol)

设置组复制通讯协议版本

SELECT group_replication_set_communication_protocol("8.0.15");

填入一个所有成员都支持的版本号,即:new_protocol ≤ 所有成员的 MySQL版本。

new_protocol 格式:major.minor.patch (主版本号.次版本号.发布版本号)例如:8.0.15。

 

2. group_replication_get_communication_protocol()

获取复制中最旧成员的 MySQL 版本号

SELECT group_replication_get_communication_protocol();
+------------------------------------------------+
| group_replication_get_communication_protocol() |
+------------------------------------------------+
| 5.7.14 |
+------------------------------------------------+

获取的版本号可能与设置的值不一致,但不一致的版本之间组复制协议是一样的。

返回结果格式:major.minor.patch (主版本号.次版本号.发布版本号)例如:8.0.15。

以上两个 UDF 对全部组成员有效,主机或从机上均可执行。

 

结论

若想使用信息碎片功能。建议将组复制成员全部升级为 8.0.16。

若组内成员版本仅有部分为 8.0.16,可以用两个新的函数来让高版本的成员保持与其它成员组协议一致。

 

参考:

组复制协议:https://dev.mysql.com/doc/refman/8.0/en/group-replication-communication-protocol.html

相关博文:https://mysqlhighavailability.com/configuring-the-communication-protocol-in-group-replication/

组复制安装部署 MySQL 8.0 Group Replication 2.1.1. 组复制的实例初始化安装2.1.2.1. 组复制实例配置的基本要求# 这里,我们仍然沿用上文中的Server名称s1、s2、s3,分别代表组复制中的第一个Server、第二个Server、第三个Server,各自创建好对应的数据和配置文件存放目录,然后,使用如下命令对3个MySQL Server进行初始化安装## 初始化安装第一个Server(s1)## 初始化安装第二个Server(s2)## 初始化安装第三个Server(s3)复制。 阅读详情

相关推荐

mysql8.0主从复制配置(超详细)

MysQL复制过程分成三步: - master将改变记录到二进制日志( binary log) - slave将master的binary log拷贝到它的中继日志(relay log) - slave重做中继日志中的事件,将改变应用到自己的数据库中

1 1万+

MySQL 8 复制(七)—— 组复制基本原理

MySQL 复制技术、组复制使用场景、组复制相关服务、组复制技术细节

wzy0623的专栏 7303

Cox构建预测模型(5):如何用R语言绘制校准曲线(附全套代码)

这篇文献通过绘制两个模型的DCA曲线来评估模型的临床决策实际需求,一个是列线图模型,包括纳入列线图的全部变量,一个是TNM模型,只纳入TNM分期3个变量。A图是训练集1年、3年、5年患者的总生存期的DCA曲线;B图是训练集1年、3年、5年患者的总生存期的DCA曲线,红色线条代表列线图模型(包括构建模型的10个变量),黄色线条代表TNM模型(仅纳入TNM分期3个变量),两个模型对比,在绘制校准图之前,必须要完成数据的导入、拆分数据集的工作、预测因子的筛选,校准图的绘制是分别在训练集与验证集独立进行的。

qq_37610365的博客 1360

MySQL8.0.16 兼容加入组_新特性解读 | MySQL 8.0.16 组复制通讯协议的设置

背景在上一篇推文中,我们介绍了 MySQL Group Replication 8.0.16 支持信息碎片化功能来增强大型事务处理能力。如果您想在组复制中使用该功能,则任何组成员的版本都不能低于 8.0.16!简单地说就是由于低版本协议上不支持。MySQL 8.0.16 的组通讯开始支持新协议,简称“分段协议”,之前的版本中只有一种“压缩协议”。如果多个成员想加入复制组,那么在协议匹配上遵循以下原...

weixin_31782201的博客 188

Conda虚拟环境用conda和pip安装软件包的路径问题

解决在虚拟环境中用pip默认把软件包安装到全局site-packages中。

stone9528的博客 4万+

如何制作DOS启动盘 U盘制作DOS启动盘 HP-U盘启动DOS7 详细步骤教程 Intel网卡使用软件 bootutil lanconfig eeupdate Intel网卡修改MAC地址教程

制作DOS启动盘不是一项复杂的任务,只要按照以下简单的步骤进行操作,您就可以自己动手制作一个DOS启动盘。

lcy524514826的博客 895

初识MYSQL组复制MGR

注:本文翻译自。

数据源的港湾 663

【js逆向学习】新手视角破解「广东省公共资源交易平台」

学习js逆向,破解广东省公共资源交易平台,详细记录个人探索、踩坑全过程。网站地址: aHR0cHM6Ly95Z3AuZ2R6d2Z3Lmdvdi5jbi8jLzQ0L2p5Z2c=仅供学习参考,如有疑问欢迎交流,一起学习进步。

DCSDA的博客 3315

二十二、MySQL 8.0 主从复制原理分析与实战

MySQL Replication是官方提供的主从同步方案,也是用的最广的同步方案。Replication(复制)使来自一个 MySQL数据库服务器(称为源(Source))的数据能够复制到一个或多个 MySQL 服务器(称为副本(Replica))。默认情况下,复制是异步的;副本不需要永久连接即可从源接收更新。根据配置,您可以复制所有数据库、指定数据库,甚至某个数据库中的指定表。说明: 旧版本的 MySQL 复制将源(Source)称为主(Master),将副本(Replica)称为从(Slave)

Evan's Blog ٩(๑❛ᴗ❛๑)۶ 2218

AutoSAR MemMap模块概述及配置参数详解

这个模块是干啥的?它是用来配置Memory Mapping and Compiler Abstraction module。

4508

博途PLC S7-1200/1500 ModbusTcp通信SCL代码篇(轮询)

博途PLC MODBUS TCP的详细讲解和注意事项,可以参看下面这篇博文,这里不在赘述。这篇作为SCL代码篇主要给出SCL语言下的轮训写法和注意事项。博途PLC1200/1500PLC ModbusTcp通信(轮询处理)_RXXW_Dor的博客-优快云博客。............

RXXW_Dor的博客 8420

mysql 组复制 架构_新特性解读 | MySQL 8.0.16 组复制通讯协议的设置

原创作者:管长龙标签:Group Communication System, Group Replication, High Availability背景在上一篇推文中,我们介绍了 MySQL Group Replication 8.0.16 支持信息碎片化功能来增强大型事务处理能力。如果您想在组复制中使用该功能,则任何组成员的版本都不能低于 8.0.16!简单地说就是由于低版本协议上不支持。M...

weixin_39521835的博客 96

Megatron-LM从头训练大语言模型:并行策略图示【Tensor并行、Pipeline并行、Data并行、Sequence并行、virtual_pipeline并行、Context并行】

节点包含的层每GPU的参数内存每GPU的激活内存节点0Stage 0层1-1212层参数/2 (TP切分)8k序列激活 (CP切分)节点1Stage 1层13-2412层参数/2 (TP切分)8k序列激活 (CP切分)节点2Stage 2层25-3612层参数/2 (TP切分)8k序列激活 (CP切分)节点3Stage 3层37-4812层参数/2 (TP切分)8k序列激活 (CP切分)负载均衡:每个节点处理相同数量的层(12层)内存优化。

u013250861的博客 285

[后端Mysql8.0组复制]

由于传统异步复制的缺陷,可能会导致主从数据不一致的问题,在主节点异常宕机时从节点可能造成数据丢失。基于这个缺陷,Mysql5.7.17推出了一个高可用与高扩展的解决方案Mysql Group Replication(简称MGR),将原有的gtid复制功能进行了增强,支持单主模式和多主模式。组复制在数据库层面上做到了只要集群中大多数主机可用,则服务可用,也就是说3台服务器的集群,允许其中1台宕机。

weixin_42055932的博客 2270

[ vulhub漏洞复现篇 ] Drupal XSS漏洞 (CVE-2019-6341)

[ vulhub漏洞复现篇 ] Drupal XSS漏洞 (CVE-2019-6341) Drupal是使用PHP语言编写的开源内容管理框架(CMF),它由内容管理系统(CMS)和PHP开发框架(Framework)共同构成,在GPL2.0及更新协议下发布。Drupal在某些情况下,通过文件模块或者子系统上传恶意文件触发XSS漏洞。

qq_51577576的博客 2208

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

死磕数据库系列(二十五):MySQL 高可用之组复制(MGR)详解

点关注公众号,回复“1024”获取2TB学习资源!前面给大家介绍过:MySQL 高可用方案选型解析,其中就提到了组复制(MGR),其实,组复制是一个 MySQL 服务器插件,可以创建具有弹性、高可用性和容错的复制拓扑。今天我将详细的为大家介绍 MySQL 数据库高可用技术之一的:组复制(MGR)相关知识,希望大家能够从中收获多多!如有帮助,请点在看、转发支持一波!!!MySQL 高可用的背景数据库...

民工哥的博客 1953

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

MySQL 8 复制(十)—— 组复制性能与限制

组复制性能、组复制要求与限制

wzy0623的专栏 5342

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

mysql复制一行sql语句_MySQL的SQL语句 -复制语句(16)- 控制组复制的 SQL 语句

用于检查和设置组复制通信协议版本的函数以下函数能够检查和配置复制组使用的组复制通信协议版本。● group_replication_get_communication_protocol()检查组当前使用的组复制通信协议版本。语法:1. STRING group_replication_get_communication_protocol()此函数没有参数。返回值:可以加入此组并使用组的通信协议的最...

weixin_28991715的博客 169

Mysql高级篇(下)——主从复制

介绍MySQL主从复制的背景、原理、作用、以及主从架构搭建过程,同时对主从复制过程中存在的问题及解决办法做了详细的说明

weixin_44666786的博客 3360

MySQL复制(五):组复制概念(Group Replication Concepts)

组复制中的成员可以独立的发起和提交事务(多主模式),当事务准备提交时,需要在组中广播将要修改的数据集,将事务加入全局事务列表,所有组成员必须就全局事务列表中给定事务的顺序达成一致,且事务必须由组服务批准后才能提交。当服务器故障时,组复制虽然可以继续提供数据库服务,但那些连接到故障服务器上的会话必须重新连接,或者failover到其他正常的服务器上,组复制并不提供会话failover的功能,需要其他的解决方案,例如MySQL Router。当单一主库负载过大时,可以通过组复制的多主模式分散写入负载。

最简单的方法,解决最实际的问题。 3670

组复制安全 | 全方位认识 MySQL 8.0 Group Replication

本节从组复制的IP白名单以及安全套接字(SSL)支持两个方面来介绍如何保护组合组成员之间连接的安全性。5.1. 组复制的IP地址白名单MGR插件有一个系统变量group_replicat...

老叶茶馆 783

MySQL8.0复制原理和部署配置步骤 -附安装虚拟机

(db02)MySQL上更据主服务器建立的账号和show master status;显示的内容,修改以下命令配置主从复制:(根据第2.4上的内容修改)通过百度网盘分享的文件:mysql-8.0.33-1.el7.x86_64.rpm-bundl...下载rpm bundle包上传到centos系统上。重启从服务以使配置更改生效。

hf191850699的专栏 1014

MySQL实现的四种通信协议

脏读又称无效数据的读出,是指在数据库访问中,事务T1将某一值修改,然后事务T2读取该值,此后T1因为某种原因撤销对该值的修改,这就导致了T2所读取到的数据是无效的。会导致丢失修改 MySQL实现了四种通信协议,包括TCP/IP,Socket,共享内存,命名管道 1.TCP/IP协议,通常我们通过来连接MySQL,各种主要编程语言都是根据这个协议实现了连接模块 2.Unix S

木头大左的博客 3675

MySQL(93)什么是MySQL复制?

MySQL复制机制可将数据库数据同步到多个服务器,主要用于数据备份、负载均衡和数据分布。其复制类型包括异步复制、半同步复制和组复制。配置主从复制需在主从服务器进行设置,包括修改配置文件、创建复制用户和启动复制线程。半同步复制需安装插件并配置主从服务器。组复制是支持多主的高可用方案,基于Paxos协议实现。通过合理选择复制方案并配置调优,可提升系统稳定性和性能。

qq_43012298的博客 430

mysql-主从复制理论

异步复制 传统的 MySQL 复制提供了一种简单的主从复制方法。有一个 master(源)和一个或多个 slave(副本)。 master 节点执行事务,提交它们,然后它们稍后发送到辅助节点在基于语句的复制中或在基于行的复制中重新执行。 它是一个无共享系统,默认情况下所有服务器都有数据的完整副本。 半同步复制 半同步复制,它为协议增加了一个同步步骤。 这意味着 master 节点在提交时等待 slave节点确认它已收到事务。只有这样,主节点才会进行提交操作。 ...

qq_22648091的博客 321
上一篇: 新特性解读 | MySQL 8.0.16 组复制新功能:消息碎片化
下一篇: 新特性解读 | MySQL 8.0 索引特性4-不可见索引
爱可生开源社区
博客等级 码龄8年 1936粉丝 1004原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值