使用AWS DMS将DocumentDB作为数据迁移源时的注意事项
使用AWS DMS(数据库迁移服务)进行迁移。
- DocumentDB -> DocumentDB
MongoDB -> DocumentDB
我尝试了两种数据迁移的方法。
從結論來看,在1的情況下,CDC(持續變更的複製)是無法運作的,但在其他情況下可以運行。
当查看AWS官方文档时,可以找到有关作为迁移源的MongoDB的描述,但没有找到关于DocumentDB的描述。然而,由于DocumentDB与MongoDB兼容,因此它们在一定程度上似乎可以运行相似。
2020年8月31日备注
最初的标题是“AWS DMS可以从MongoDB迁移数据,但无法从DocumentDB迁移”,但是后来发现只要避免CDC,就可以将DocumentDB作为迁移源进行操作,因此对文章内容进行了修正。
步骤
我会简单地写下设置步骤。
前提
-
移行元と移行先は構築済み
移行元と移行先の両方と通信できるAWSのVPCがある
通信できるというのは、セキュリティグループの適切な設定を含む
以下手順のDMSレプリカインスタンスはこのVPC内に構築
步驟
- DMS复制实例的构建(需要设置能连接到数据迁移源和目的地的安全组)
设置DMS复制实例到数据迁移源的源端点配置
设置DMS复制实例到数据迁移目的地的目标端点配置(根据AWS文档下载DocumentDB连接所需的证书,并进行端点配置)
创建DMS迁移任务(在任务创建时指定复制实例、源端点和目标端点)
在AWS的文档中有详细说明。
教程:从MongoDB迁移到Amazon DocumentDB – AWS数据库迁移服务
如果指定DocumentDB作为迁移源的话
只需指定MongoDB作为源端点引擎,并设置DocumentDB的连接信息,即可将DocumentDB用作迁移源。
在创建迁移任务时选择“迁移现有数据并复制持续变更(CDC)”会导致迁移执行时出现错误。

以下是错误的详细信息。
Last failure message
Last Error Endpoint initialization failed. Task error notification received from subtask 0, thread 0 [reptask/replicationtask.c:2814] [1020401] Error executing command; Stream component failed at subtask 0, component st_0_3OQBMWWPDQOCVQ36IETQPRLPTPU2BUTTYOYJBJY ; Stream component 'st_0_3OQBMWWPDQOCVQ36IETQPRLPTPU2BUTTYOYJBJY' terminated [reptask/replicationtask.c:2821] [1020401] Stop Reason FATAL_ERROR Error Level FATAL