Docs 菜单
Docs 主页
/
MongoDB Cluster-to-Cluster Sync
/ /

A->B-> C迁移

在此页面上

  • 语法
  • 行为
  • 迁移名称
  • 例子
  • 了解详情

重要

Cluster-to-Cluster Sync beta计划

此功能仅在 mongosync beta中可用。 要学习;了解更多信息,请参阅 Cluster-to-Cluster Sync beta计划。

mongosync beta 1.8开始,您可以执行 A->B-> C迁移。 A->B-> C迁移支持连续执行两次迁移,第一次迁移的目标集群将作为第二次迁移的源集群。

要执行 A->B-> C迁移,请在启动mongosync时运行以下命令:

./bin/mongosync \
--cluster0 <cluster-A-connection-string> \
--cluster1 <cluster-B-connection-string> \
--migrationName <string>
./bin/mongosync \
--cluster0 <cluster-B-connection-string> \
--cluster1 <cluster-C-connection-string> \
--migrationName <string>

要在源集群和目标集群之间启动同步操作,请参阅在集群之间同步数据。

第一次迁移(A->B) 必须在第二次迁移(B-> C) 开始提交之前完成提交

警告

如果第二次迁移在第一次迁移完成之前开始提交,则可能会遇到数据丢失的情况。

在使用任何实验性的 mongosync beta功能之前,请查看Cluster-to-Cluster Sync beta计划免责声明。

为了获得更好的性能,请确保第一次迁移(A->B)在第二次迁移(B-> C)开始之前达到change event application 。 要查看迁移是否达到change event application ,请检查progress响应文档中的info字段。

migrationName 字符串最多可包含 44 个字母数字和下划线字符。migrationName 附加到字符串 "mongosync_internal_" 中以设置迁移元数据数据库名称。

例如,如果您将 migrationName 设置为 "cluster_27000_to_cluster_35000_sync",则生成的 mongosync 元数据数据库名称为 "mongosync_internal_cluster_27000_to_cluster_35000_sync"

以下示例执行两次连续迁移:

  1. 将在端口27000上运行的源集群与在端口27001上运行的目标集群连接。

  2. 使用在端口27001上运行的目标集群作为第二次迁移的源集群。

  3. 将端口27001上的源集群与端口27002上运行的目标集群连接。

该命令还设置--migrationName来描述操作并存储每次同步的迁移元数据。

./bin/mongosync \
--cluster0 "mongodb://localhost:27000" \
--cluster1 "mongodb://localhost:27001" \
--migrationName "cluster_27000_to_cluster_27001_sync"
./bin/mongosync \
--cluster0 "mongodb://localhost:27001" \
--cluster1 "mongodb://localhost:27002" \
--migrationName "cluster_27001_to_cluster_27002_sync"

后退

测试计划