12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
ADADADADAD
mysql数据库 时间:2024-11-26 22:11:38
作者:文/会员上传
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
小编介绍了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的使用
11-20
11-19
11-20
11-20
11-20
11-19
11-20
11-20
11-19
11-20
11-19
11-19
11-19
11-19
11-19
11-19