# 第十八章 组复制 **目录** [18.1 组复制背景](group-replication-background.html) [18.1.1 复制技术](group-replication-replication-technologies.html) [18.1.2 组复制用例](group-replication-use-cases.html) [18.1.3 多主模式和单主模式](group-replication-deploying-in-multi-primary-or-single-primary-mode.html) [18.1.4 组复制服务](group-replication-details.html) [18.1.5 组复制插件架构](group-replication-plugin-architecture.html) [18.2 开始](group-replication-getting-started.html) [18.2.1 单主模式部署组复制](group-replication-deploying-in-single-primary-mode.html) [18.2.2 本地部署组复制](group-replication-deploying-locally.html) [18.3 要求和限制](group-replication-requirements-and-limitations.html) [18.3.1 组复制要求](group-replication-requirements.html) [18.3.2 组复制限制](group-replication-limitations.html) [18.4 监控组复制](group-replication-monitoring.html) [18.4.1 GTID 和组复制](group-replication-gtids.html) [18.4.2 组复制服务器状态](group-replication-server-states.html) [18.4.3 复制\_团体\_成员表](group-replication-replication-group-members.html) [18.4.4 复制\_团体\_成员\_统计表](group-replication-replication-group-member-stats.html) [18.5 组复制操作](group-replication-operations.html) [18.5.1 配置在线组](group-replication-configuring-online-group.html) [18.5.2 重启组](group-replication-restarting-group.html) [18.5.3 交易一致性保证](group-replication-consistency-guarantees.html) [18.5.4 分布式恢复](group-replication-distributed-recovery.html) [18.5.5 支持 IPv6 以及混合 IPv6 和 IPv4 组](group-replication-ipv6.html) [18.5.6 使用 MySQL Enterprise Backup 和 Group Replication](group-replication-enterprise-backup.html) [18.6 组复制安全](group-replication-security.html) [18.6.1 连接安全管理方法](group-replication-connection-security.html) [18.6.2 使用安全套接字层 (SSL) 保护组通信连接](group-replication-secure-socket-layer-support-ssl.html) [18.6.3 保护分布式恢复连接](group-replication-distributed-recovery-securing.html) [18.6.4 组复制 IP 地址权限](group-replication-ip-address-permissions.html) [18.7 组复制性能和故障排除](group-replication-performance.html) [18.7.1 微调组通信线程](group-replication-fine-tuning-the-group-communication-thread.html) [18.7.2 流量控制](group-replication-flow-control.html) [18.7.3 单一共识领导者](group-replication-single-consensus-leader.html) [18.7.4 消息压缩](group-replication-message-compression.html) [18.7.5 消息分片](group-replication-performance-message-fragmentation.html) [18.7.6 XCom 缓存管理](group-replication-performance-xcom-cache.html) [18.7.7对故障检测和网络划分的响应](group-replication-responses-failure.html) [18.7.8处理网络分区和法定人数丢失](group-replication-network-partitioning.html) [18.8升级组复制](group-replication-upgrade.html) [18.8.1在一个组中组合不同的成员版本](group-replication-online-upgrade-combining-versions.html) [18.8.2组复制脱机升级](group-replication-offline-upgrade.html) [18.8.3组复制联机升级](group-replication-online-upgrade.html) [18.9组复制系统变量](group-replication-options.html) [18.10常见问题](group-replication-frequently-asked-questions.html) [](<>)[](<>) 本章介绍MySQL组复制以及如何安装、配置和监视组。MySQL组复制使您能够创建弹性、高可用、容错的复制拓扑。 组可以在具有自动初选功能的单一初选模式下运行,一次只有一台服务器接受更新。或者,可以在多主模式下部署组,在这种模式下,所有服务器都可以接受更新,即使它们是同时发布的。 有一个内置的组成员资格服务,可以在任何给定时间点保持组视图的一致性,并可用于所有服务器。服务器可以离开并加入组,视图也会相应更新。有时服务器可能会意外地离开组,在这种情况下,故障检测机制会检测到这一点,并通知组视图已更改。这是全自动的。 组复制保证数据库服务持续可用。但是,重要的是要了解,如果其中一个组成员不可用,则必须使用连接器、负载平衡器、路由器或某种形式的中间件将连接到该组成员的客户端重定向或故障转移到组中的另一台服务器。组复制没有内置的方法来执行此操作。例如,请参见[MySQL路由器8.0](https://dev.mysql.com/doc/mysql-router/8.0/en/). 组复制作为MySQL服务器的插件提供。您可以按照本章中的说明在组中所需的每个服务器实例上配置插件,启动组,并监视和管理组。部署一组MySQL服务器实例的另一种方法是使用InnoDB Cluster。 提示 要部署多个MySQL实例,可以使用[InnoDB集群](https://dev.mysql.com/doc/mysql-shell/8.0/en/mysql-innodb-cluster.html)这使您能够轻松地在中管理一组MySQL服务器实例[MySQL外壳](https://dev.mysql.com/doc/mysql-shell/8.0/en/).InnoDB Cluster将MySQL组复制包装在编程环境中,使您能够轻松部署MySQL实例群集以实现高可用性。此外,InnoDB集群与[MySQL路由器](https://dev.mysql.com/doc/mysql-router/8.0/en/),使您的应用程序能够连接到群集,而无需编写自己的故障切换过程。但是,对于不需要高可用性的类似用例,您可以使用[InnoDB复制集](https://dev.mysql.com/doc/mysql-shell/8.0/en/mysql-innodb-replicaset.html).可以找到MySQL外壳的安装说明[在这里](https://dev.mysql.com/doc/mysql-shell/8.0/en/mysql-shell-install.html). 本章的结构如下: - [第18.1节,“组复制背景”](group-replication-background.html)介绍组以及组复制的工作原理。 - [第18.2节“开始”](group-replication-getting-started.html)解释如何配置多个MySQL服务器实例以创建组。 - [第18.3节“要求和限制”](group-replication-requirements-and-limitations.html)解释组复制的体系结构和设置要求以及限制。 - [第18.4节,“监控组复制”](group-replication-monitoring.html)解释如何监视组。 - [第18.5节,“组复制操作”](group-replication-operations.html)解释如何与团队合作。 - [第18.6节,“组复制安全”](group-replication-security.html)解释如何保护组。 - [第18.7节,“组复制性能和故障排除”](group-replication-performance.html)解释如何微调团队的绩效。 - [第18.8节,“升级组复制”](group-replication-upgrade.html)解释如何升级组。 - [第18.9节,“组复制系统变量”](group-replication-options.html)是特定于组复制的系统变量的参考。 - [第18.10节“常见问题”](group-replication-frequently-asked-questions.html)提供有关部署和操作组复制的一些技术问题的答案。