0

我目前的要求是将本地 Oracle DB 迁移到 AWS 中的 Aurora MySql。我遇到的一个问题是,是否可以在迁移期间从源中的多个表中加入数据。例如,可以使用 DMS 连接 2 个表并将结果数据加载到目标中的单个表。

4

1 回答 1

2

这不是 DMS 的功能。

DMS 是逐表工作的,转换方法是根据模式、表和列定义的。

我尝试使用 DMS 中可用的转换将两个共享密钥的源表迁移到一个目标表中:

也就是说,TABLE1.ID=TABLE2.ID 但两个表都有其他不共有的列。

我创建了一个任务,尝试将 TABLE2 重命名为 TABLE1:

{
    "rules": [{
        "rule-type": "selection",
        "rule-id": "1",
        "rule-name": "1",
        "object-locator": {
            "schema-name": "TESTSCHEMA",
            "table-name": "TABLE1"
        },
        "rule-action": "include"
    },
    {
        "rule-type": "selection",
        "rule-id": "2",
        "rule-name": "2",
        "object-locator": {
            "schema-name": "TESTSCHEMA",
            "table-name": "TABLE2"
        },
        "rule-action": "include"
    },
    {
        "rule-type": "transformation",
        "rule-id": "3",
        "rule-name": "3",
        "rule-target": "table",
        "object-locator": {
            "schema-name": "TESTSCHEMA",
            "table-name": "TABLE2"
        },
        "rule-action": "rename",
        "value": "TABLE1"
    }]
}

一个表成功,另一个表失败。

于 2018-09-27T04:44:30.157 回答