/ 数据复制服务 drs/ 实时同步/ 任务管理/ / 对象名修改(对象名映射)
更新时间:2025-02-10 gmt 08:00

对象名修改(对象名映射)-九游平台

实时同步功能可以支持源数据库和目标数据库中的同步对象(包括数据库、schema、表)的名称不同。对象名映射功能主要在如下场景使用:

  • 对象名修改:如果同步的数据库对象在目标数据库中的命名和源数据库中不同,那么可以使用drs提供的对象名映射功能进行修改。
  • 多对一同步:如果需要进行库、schema、表的多对一同步,那么可以使用drs提供的对象名映射功能实现。

本小节主要介绍如何在实时同步任务配置过程中,使用对象名映射功能,该功能的映射关系详情可参见章节。

使用须知

  • 不支持库名、表名带有换行符的对象进行映射。
  • 首次创建实时同步任务时,在选择同步对象阶段可设置映射,后续不可编辑映射。
  • 通过编辑同步对象功能来增加或者减少同步对象时,首次编辑的对象可以设置映射关系,已经在同步关系中的对象不可设置映射。
  • 若目标库是pg类(如gaussdb(dws)、gaussdb和postgresql),目的库的schema名称不能设置为以pg_开头,否则会迁移失败。
  • 以下链路,支持基础映射:
    • aws documentdb -> dds
    • cassandra -> geminidb cassandra
    • mysql -> mariadb
    • mysql -> gaussdb集中式
    • mysql -> gaussdb分布式版
    • mysql -> gaussdb(dws)
    • mysql -> taurusdb
    • mysql -> kafka
    • mysql -> postgresql
    • mysql -> oracle
    • mariadb -> mariadb
    • mariadb -> mysql
    • mariadb -> taurusdb
    • ddm -> ddm
    • ddm -> oracle
    • ddm -> gaussdb(dws)
    • ddm -> mysql
    • db2 for luw -> gaussdb集中式
    • db2 for luw -> gaussdb分布式版
    • db2 for luw -> gaussdb(dws)
    • dds -> mongodb
    • microsoft sql server -> gaussdb(dws)
    • microsoft sql server -> gaussdb集中式
    • microsoft sql server -> gaussdb分布式版
    • microsoft sql server -> microsoft sql server
    • microsoft sql server -> mysql
    • microsoft sql server -> postgresql
    • microsoft sql server -> taurusdb
    • mongodb -> dds
    • gaussdb集中式版 -> mysql
    • gaussdb集中式版 -> oracle
    • gaussdb集中式版 -> gaussdb集中式
    • gaussdb集中式版 -> gaussdb分布式版
    • gaussdb分布式版 -> mysql
    • gaussdb分布式版 -> oracle
    • gaussdb分布式版->gaussdb分布式版
    • gaussdb分布式版->gaussdb集中式
    • taurusdb -> mysql
    • taurusdb -> gaussdb(dws)
    • taurusdb -> taurusdb
    • oracle -> mysql
    • oracle -> taurusdb
    • oracle -> gaussdb(dws)
    • oracle -> gaussdb集中式
    • oracle -> gaussdb分布式版
    • oracle -> postgresql
    • oracle -> ddm
    • postgresql -> postgresql
    • postgresql -> gaussdb(dws)
    • postgresql -> gaussdb集中式
    • postgresql -> gaussdb分布式版
    • tidb -> taurusdb
  • 以下链路,仅支持表级映射:
    • dynamo -> geminidb dynamo
    • mysql -> css/es
    • taurusdb -> css/es
  • 以下链路,仅支持库级映射:
    • gaussdb集中式版 -> gaussdb(dws)
    • gaussdb分布式版 -> gaussdb(dws)
  • 以下链路,支持schema级映射,表级映射和topic映射:
    • gaussdb集中式版 -> kafka
    • gaussdb分布式版 -> kafka
  • 以下链路,不支持包含smallserial, serial, bigserial 这3个类型的表进行schema映射。
    • gaussdb集中式版->gaussdb分布式版
    • gaussdb集中式版->gaussdb集中式
    • gaussdb分布式版->gaussdb分布式版
    • gaussdb分布式版->gaussdb集中式
  • 以下链路,支持多对一的对象映射。
    • mysql->mysql
    • mysql->taurusdb
    • mysql->gaussdb(dws)
    • mysql->kafka
    • mysql -> oracle
    • taurusdb->mysql
    • taurusdb->taurusdb
    • taurusdb->gaussdb(dws)
    • oracle->gaussdb
    • oracle->gaussdb(dws)
    • gaussdb集中式版->gaussdb(dws)
    • gaussdb分布式版->gaussdb(dws)
    • mysql->oracle
    • gaussdb集中式版->gaussdb分布式版
    • gaussdb集中式版->gaussdb集中式
    • gaussdb分布式版->gaussdb分布式版
    • gaussdb分布式版->gaussdb集中式

对象名修改

实时同步过程中,如果待同步的库、schema、表对象在源数据库和目标数据库中存储名称不同,可以使用实时同步提供的映射功能进行映射。例如:将源数据库中的a库同步到目标数据库,变成目标数据库中的b库,此时就可以使用库映射功能来实现。

  1. “设定同步”页面,同步对象右侧已选对象框中,选择需要进行映射的数据库,单击“编辑”按钮。
    图1 库映射
  2. 修改名称。

    在弹出的编辑框中,填写新的数据对象名称,修改后的名称即为保存在目标数据库中的名称。

    图2 修改库名
    图3 修改schema名
    图4 修改表名
  3. 查看修改结果。
    修改成功后,您会看到修改前和修改后的名称,至此,表示完成对象名映射的配置。
    图5 查看修改结果

多对一同步

实时同步过程中,可以使用对象名映射功能修改库、schema、表名称,实现多对一的同步。

以库级多对一为例,schema、表级多对一场景可参考如下步骤:

  1. “设定同步”页面,同步对象右侧已选对象框中,选择需要进行多对一同步的数据库,分别单击“编辑”按钮。
  2. “编辑库名”的弹出框中,统一填写新的数据库名,修改后的名称即为保存在目标数据库中的库名。

    例如,将源库中的库test_16和库auto_nprocess_001,修改为同样的库test_16_new。

    图6 修改结果
  3. 库名修改成功后,您会看到修改前的库名和修改后的新数据库名,至此,表示已完成多对一库映射的配置。
  4. 配置完成后,等待任务启动并完成同步后,即可实现库test_16、库auto_nprocess_001到库test_16_new的同步。

相关文档

网站地图