如何恢复 CRDB 拓扑结构中的集群?

最后更新于 2024 年 4 月 18 日

问题

  • 重建作为 CRDB 网格一部分的集群的最佳实践是什么?例如,从其他集群同步、从 RDB/AOF 恢复等。
  • 如果集群失去法定人数,是应该重新加入 CRDB 网格还是独立从 RDB 恢复?
  • 如果集群同时包含 CRDB 数据库和非 CRDB 数据库,是否有其他注意事项?

答案

如果 CRDB 中有活动的/健康的实例,并且只需要在出现问题的集群上进行集群恢复,您应该使用 rladmin recover db <db_name> only_configuration 命令恢复数据库,并让数据从健康的实例同步。

如果 CRDB 中的所有实例都需要恢复,您应该恢复一个带数据的实例,而只恢复其他实例的配置。这在我们的恢复数据库文档中有所提及

对于仍有活动实例的 Active-Active 数据库,我们建议您恢复失败实例的配置,并让数据从其他实例更新。

当集群同时包含 CRDB 和独立数据库时,预计不会有副作用。