10bet网址
MySQL 8.0参考手册
相关文件10bet官方网站 本手册下载
PDF (Ltr)- 41.1 mb
PDF (A4)- 41.2 mb
PDF (RPM)- 39.8 mb
HTML下载(TGZ)- 9.5MB.
HTML下载(邮政编码)- 9.6MB.
HTML下载(RPM)- 8.1 mb
手册页(TGZ)- 260.5 kb
男人页(zip)- 371.7KB.
信息(GZIP)- 3.9 mb
信息(zip)- 3.9 mb
从本手册中摘录

18.5.3分布式恢复

每当成员加入或重新加入复制组时,它必须跟上在加入之前或离开时组成员应用的事务。这个过程称为分布式恢复。

加入成员首先检查中继日志group_replication_applier任何事务的渠道,它已从本集团收到但尚未适用。如果加入成员以前在本集团中,它可能会在剩下之前从中找到未使用的交易,在这种情况下,它将这些产品作为第一步。对本集团新的成员没有任何应用。

在此之后,加入的成员连接到一个在线现有成员进行状态转移。加入成员转移在加入之前或离开时发生在组中的所有交易,这些交易由现有成员(称为捐赠者)。接下来,加入成员应用该组中发生的事务,而在此状态转移正在进行中。当此过程完成时,加入成员赶上了该组中的剩余服务器,并且它开始正常参与该组。

组复制使用这些方法的组合在分布式恢复期间进行状态转移:

  • 使用克隆插件的功能进行远程克隆操作,可以从MySQL 8.0.17获得。要启用这种状态传输方法,必须在组成员和加入成员上安装克隆插件。组复制自动配置所需的克隆插件设置和管理远程克隆操作。

  • 从捐赠者的二进制日志进行复制,并将事务应用于联接成员。此方法使用一个名为group_replication_recovery.这是在施主和连接构件之间建立的。

在发出状态传输后,组复制自动选择这些方法的最佳组合开始group_replication.在加入会员上。为此,组复制检查哪些现有成员适合作为捐赠者,加入成员从捐赠者需要的交易需要多少交易,以及任何必需的事务是否不再存在于任何组成员上的二进制日志文件中。如果加入成员和合适的捐赠者之间的交易差距很大,或者如果某些所需的交易不在任何捐赠者的二进制日志文件中,则组复制开始具有远程克隆操作的分布式恢复。如果没有大的交易缺口,或者如果未安装克隆插件,则组复制将直接进行到从捐赠者的二进制日志中传输。

  • 在远程克隆操作期间,接入成员上的现有数据被删除,并用捐赠者数据的副本替换。当远程克隆操作完成并且连接成员重新启动时,执行从捐赠者的二进制日志的状态传输,以获取在远程克隆操作正在进行时应用的组的事务。

  • 在从捐赠方二进制日志进行状态传输期间,加入成员复制并应用捐赠方二进制日志中所需的事务,应用收到的事务,直到二进制日志记录加入成员加入组(视图更改事件)为止。在此过程中,联接成员缓冲组应用的新事务。当二进制日志的状态传输完成时,加入成员应用缓冲的事务。

当加入成员与所有组的交易最新时,它在线声明并可作为普通成员将该组参与,并且分布式恢复完成。

提示

来自二进制日志的状态转移是组复制的分布式恢复的基础机制,如果未设置复制组中的捐赠者和加入成员以支持克隆,则这是唯一可用的选项。由于来自二进制日志的状态转移基于经典的异步复制,如果加入该组的服务器完全没有组数据,或者具有从一个非常旧的备份图像获取的数据可能需要很长时间。因此,在这种情况下,建议在将服务器添加到组之前,您应该通过传输本组中已有的服务器的一个相当最近的服务器的快照来将其设置为组。这最大限度地减少了分布式恢复所需的时间,并降低对捐赠服务器的影响,因为它们必须保留和转移更少的二进制日志文件。