• ADADADADAD

    MySQL 5.7.17 Group Relication的搭建是怎样的[ mysql数据库 ]

    mysql数据库 时间:2024-11-26 22:11:38

    作者:文/会员上传

    简介:

    小编介绍了Group Replication的两种工作模式的架构。并详细介绍了Single-Master Mode的部署过程,以及如何切换到Multi-Master Mode。当然,文末给出了Group Replication的配置

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    小编介绍了Group Replication的两种工作模式的架构。
    并详细介绍了Single-Master Mode的部署过程,以及如何切换到Multi-Master Mode。
    当然,文末给出了Group Replication的配置要求和一些限制。


    〇 结构介绍

    在2016年12月发布的5.7.17版本的MySQL,甲骨文宣布Group Replication已经GA。

    Group Replication(下简称GR)有两个工作模式,分别为Single-Master Mode与Multi-Master Mode:


    Single-Master Mode的failover图:

    只有primary成员可读写,而其他的节点为只读,在primary成员发生故障时,将会有其他成员顶替成primary。


    Multi-Master Mode的failover图:


    所有的成员均可读可写。


    关于脑裂问题,可发现MySQL Group Replication与MongoDB Relicate Set有相似之处:
    和MongoDB的Relicate Set相近,其读写库类似于Primary,只读库类似于Secondary。

    (下图来自MySQL官方)


    (下图来自MongoDB 3.4 Manual)






    〇 部署

    测试实例数量:3台
    版本:MySQL 5.7.17

    安装(此处用的是二进制包安装)
    mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz


    创建数据目录及日志目录:

      loose-group_replication_single_primary_mode=FALSE

      loose-group_replication_enforce_update_everywhere_checks=TRUE

      (single-master mode 这俩个参数的值为TRUE和FALSE)




    〇 要求和限制

    仅可用于InnoDB存储引擎(需要事务的支持和行级锁)
    表必须有主键(创建无主键的表不会报错,但在插入数据的时候会抛出:ERROR 3098 (HY000): The table does not comply with the requirements by an external plugin.)
    必须启用GTID
    必须开启二进制日志,并且其格式必须为ROW(binlog_format=row)
    冲突DDl、DML只能在同一成员上执行成功
    在多主结构中,不完全支持外键(单主结构中是没有问题的)
    不支持serializable的事务隔离级别
    只支持IPv4,并且需要低延迟,高带宽的网络环境
    GR最大支持9个成员
    复制信息元数据必须存在系统表(master-info-repository=TABLE、relay-log-info-repository=TABLE)
    二进制日志checksums必须关闭(binlog-checksum=NONE)
    不支持savepoint的使用



    MySQL 5.7.17 Group Relication的搭建是怎样的.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysqlgroupRELICATION