文档主页
MySQL 8.4 参考手册
相关文档 下载本手册
PDF(美国信纸) - 39.9 MB
PDF(A4) - 40.0 MB
手册页(TGZ) - 258.5 KB
手册页(Zip) - 365.5 KB
信息(Gzip) - 4.0 MB
信息(Zip) - 4.0 MB


20.7.7.3 自动重新加入

group_replication_autorejoin_tries 系统变量使已被驱逐或达到无法访问多数超时的成员尝试自动重新加入组。默认值 (3) 表示该成员会自动尝试 3 次重新加入该组,每次尝试之间间隔 5 分钟。

未激活自动重新加入时,成员会在恢复通信后立即接受其驱逐,并继续执行 group_replication_exit_state_action 系统变量指定的操作。此后,需要手动干预才能使成员重新加入组。如果您能够容忍读取过时数据的可能性,并且希望最大程度地减少手动干预的需求,则使用自动重新加入功能是合适的,尤其是在瞬时网络问题经常导致成员被驱逐的情况下。

使用自动重新加入时,当成员达到驱逐或无法访问多数超时时,它会尝试重新加入(使用当前插件选项值),然后继续进行进一步的自动重新加入尝试,直到达到指定的尝试次数。自动重新加入尝试失败后,成员会在下次尝试之前等待 5 分钟。自动重新加入尝试及其之间的时间称为自动重新加入过程。如果指定的尝试次数已用尽,但成员既没有重新加入也没有被停止,则成员将继续执行 group_replication_exit_state_action 系统变量指定的操作。

在自动重新加入尝试期间和尝试之间,成员保持超级只读模式,并在其复制组视图上显示 ERROR 状态。在此期间,成员不接受写入。但是,仍然可以在成员上进行读取,但随着时间的推移,读取过时数据的可能性会越来越大。如果您确实想在自动重新加入过程中干预以使成员脱机,则可以使用 STOP GROUP_REPLICATION 语句或关闭服务器来随时手动停止成员。如果您不能容忍任何时间段的读取过时数据的可能性,请将 group_replication_autorejoin_tries 系统变量设置为 0。

您可以使用性能架构监控自动重新加入过程。当自动重新加入过程正在进行时,性能架构表 events_stages_current 会显示事件“正在进行自动重新加入过程”,以及在此过程中到目前为止已尝试的重试次数(在 WORK_COMPLETED 字段中)。events_stages_summary_global_by_event_name 表显示了服务器实例启动自动重新加入过程的次数(在 COUNT_STAR 字段中)。events_stages_history_long 表显示了每次自动重新加入过程完成的时间(在 TIMER_END 字段中)。当成员重新加入复制组时,在组完成兼容性检查并将其接受为成员之前,其状态可能会显示为 OFFLINEERROR。当成员赶上组的事务时,其状态为 RECOVERING