返回顶部
首页 > 资讯 > 数据库 >MySQL MGR 有哪些优点
  • 1343
分享到

MySQL MGR 有哪些优点

MySQLmgrMySQL分布式MySQL分布式数据库 2022-05-15 01:05:58 1343人浏览 泡泡鱼
摘要

MGR(Mysql Group Replication)是5.7版本新加的特性,是一个mysql插件。 MGR 是一个新的高可用与高扩展的方案,集群中的任何节点数据都是一样的,可以实现任何节点都可以写入,实现了真正意

MGR(Mysql Group Replication)是5.7版本新加的特性,是一个mysql插件

MGR 是一个新的高可用与高扩展的方案,集群中的任何节点数据都是一样的,可以实现任何节点都可以写入,实现了真正意义上的多主。

主要包含以下几部分:

 api层:负责完成和MySQL Server的交互,得到Server状态,完成事务的管理。

组件层:主要包括3个特定组件,Capture负责收集事务执行的相关信息,Applier负责应用集群事务到本地,Recovery负责节点的数据恢复。

复制层:负责冲突验证,接收和应用集群事务。

集群通信层:基于Paxos协议的集群通信引擎,以及和上层组件的交互接口。

MGR组复制:

基于传统异步复制和半同步复制的缺陷——数据的一致性问题无法保证,Mysql官方在5.7.17版本正式推出组复制(MySQL Group Replication,简称MGR)。

由若干个节点共同组成一个复制组,一个事务的提交,必须经过组内大多数节点(N / 2 + 1)决议并通过,才能得以提交。如上图所示,由3个节点组成一个复制组,Consensus层为一致性协议层,在事务提交过程中,发生组间通讯,由2个节点决议(certify)通过这个事务,事务才能够最终得以提交并响应。

引入组复制,主要是为了解决传统异步复制和半同步复制可能产生数据不一致的问题。组复制依靠分布式一致性协议(Paxos协议的变体),实现了分布式下数据的最终一致性,提供了真正的数据高可用方案(是否真正高可用还有待商榷)。其提供的多写方案,给我们实现多活方案带来了希望。

MGR是实现分布式数据库架构,底层的分布式基础是Paxos协议。通过Paxos来保证分布式数据库系统中事务的提交顺序。虽然MGR会使用Slave的通道,但只是使用这个通道的执行线程(Applier Thread)来执行远程发送过来的Binlog Event,并没有使用这个通道来传输Binlog Event。MGR没有使用异步复制的Binlog Event传输机制,也不使用MySQL的服务端口来进行通信。MGR创建了一个独立的tcp端口来进行通信,各个MySQL服务器上的Group Replication插件通过这个端口连接在一起,两两之间可以直接通信。

Binlog Event的传输并不像异步复制那样是简单的点到点之间的传输。MGR在传输数据时,使用了Paxos协议。Paxos协议保证了数据传输的一致性和原子性。MGR基于Paxos协议构建了一个分布式的状态机复制机制,这是实现多主复制的核心技术。

三个主要优点:

避免脑裂:MGR中不会出现脑裂的现象(但要注意可能出现网络分区的情况,MGR根据参数group_replication_unreachable_majority_timeout=0/N设置的不同,行为稍有不同)。

数据一致性保障:MGR的冗余能力很好,能够保证Binlog Event至少被复制到超过一半的成员上,只要同时宕机的成员不超过半数便不会导致数据丢失。MGR还保证只要Binlog Event没有被传输到半数以上的成员,本地成员不会将事务的Binlog Event写入Binlog文件和提交事务,从而保证宕机的服务器上不会有组内在线成员上不存在的数据。因此,宕机的服务器重启后,不再需要特殊的处理就可以加入组。

多节点写入支持:多写模式下支持集群中的所有节点都可以写入。

以上就是MySQL MGR 有哪些优点的详细内容,更多关于MySQL MGR 的资料请关注自学编程网其它相关文章!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL MGR 有哪些优点

本文链接: https://lsjlt.com/news/9690.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL MGR 有哪些优点
    MGR(Mysql Group Replication)是5.7版本新加的特性,是一个MySQL插件。 MGR 是一个新的高可用与高扩展的方案,集群中的任何节点数据都是一样的,可以实现任何节点都可以写入,实现了真正意...
    99+
    2022-05-15
    MySQL mgr MySQL 分布式 MySQL 分布式数据库
  • MySQL 8.0.0有哪些优点
    本篇内容介绍了“MySQL 8.0.0有哪些优点”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!MySQL ...
    99+
    2024-04-02
  • mysql 5.7有哪些优缺点
    这篇文章主要讲解了“mysql 5.7有哪些优缺点”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql 5.7有哪些优缺点”吧!原理 innodb的透...
    99+
    2024-04-02
  • mysql索引有哪些优点
    本文小编为大家详细介绍“mysql索引有哪些优点”,内容详细,步骤清晰,细节处理妥当,希望这篇“mysql索引有哪些优点”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 ...
    99+
    2024-04-02
  • mysql游标的优缺点有哪些
    小编给大家分享一下mysql游标的优缺点有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!游标介绍MySQL的游标(curso...
    99+
    2024-04-02
  • mysql储存过程有哪些优点
    这篇文章给大家分享的是有关mysql储存过程有哪些优点的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。但是在数据库的实际操作中,经常会有一个完整的操作需要多条 SQL 语句处理多个...
    99+
    2024-04-02
  • MySQL数据库的优点有哪些
    本篇文章为大家展示了MySQL数据库的优点有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。  MySQL数据库优点有哪些  1、许可费用  MySQL的普及很大...
    99+
    2024-04-02
  • mysql行锁的优缺点有哪些
    这篇文章给大家分享的是有关mysql行锁的优缺点有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、行锁的优势:锁的粒度小,发生锁冲突的概率低;处理并发的能力强。在很多线程请求不同记录时减少冲突锁。事务回滚时...
    99+
    2023-06-15
  • mysql容器化的优点有哪些
    MySQL容器化的优点有以下几个:1. 轻量级:容器化的MySQL是一个独立的、轻量级的虚拟化环境,它只包含运行MySQL所需的最小...
    99+
    2023-09-23
    mysql
  • nodejs有哪些优点
    这篇文章主要讲解了“nodejs有哪些优点”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“nodejs有哪些优点”吧! nodej...
    99+
    2024-04-02
  • html5有哪些优点
    本篇内容介绍了“html5有哪些优点”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!html5是最近几年逐渐...
    99+
    2024-04-02
  • jquery有哪些优点
    这篇文章主要介绍了jquery有哪些优点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 jquery的优点:1、...
    99+
    2024-04-02
  • Iodine有哪些优点
    本篇内容主要讲解“Iodine有哪些优点”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Iodine有哪些优点”吧!1. 更优秀的语言Iodine是常规Java的完整超集,它提供了强大的功能,使得...
    99+
    2023-06-17
  • prototype有哪些优点
    这篇文章主要讲解了“prototype有哪些优点”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“prototype有哪些优点”吧!效果Prototype有许多和Abstract Factory...
    99+
    2023-06-19
  • HBase有哪些优点
    本篇内容介绍了“HBase有哪些优点”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是HBase?HBase是一个分布式的、面向列的开源数...
    99+
    2023-06-02
  • OJB有哪些优点
    这篇文章主要介绍“OJB有哪些优点”,在日常操作中,相信很多人在OJB有哪些优点问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”OJB有哪些优点”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!简介:对象关系桥...
    99+
    2023-06-03
  • MySQL中的MGR集群有什么特点
    这篇文章主要介绍“MySQL中的MGR集群有什么特点”,在日常操作中,相信很多人在MySQL中的MGR集群有什么特点问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL中...
    99+
    2024-04-02
  • MySQL中MERGE表的优缺点有哪些
    这篇文章将为大家详细讲解有关MySQL中MERGE表的优缺点有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 MERGE表的优点:1.简...
    99+
    2024-04-02
  • MySQL索引优化知识点有哪些
    这篇文章主要介绍“MySQL索引优化知识点有哪些”,在日常操作中,相信很多人在MySQL索引优化知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL索引优化知...
    99+
    2024-04-02
  • MySQL表分区的优缺点有哪些
    MySQL表分区的优点包括:1. 提高查询性能:通过将数据分散存储在多个分区中,可以实现更快的查询性能。当查询仅涉及到一个或几个分区...
    99+
    2023-10-12
    mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作