更新时间:2022-05-20 GMT+08:00
分享

对象名映射

实时同步功能可以支持源数据库和目标数据库中的同步对象(包括数据库、schema、表)的名称不同。如果同步的数据库对象在源数据库和目标数据库中的命名不同,那么可以使用数据复制服务提供的对象名映射功能进行映射。其中包括:库映射、schema映射、表映射。

对象名映射功能支持在如下场景使用:

  • 首次创建实时同步任务时,在选择同步对象阶段可设置映射,后续不可编辑映射。
  • 通过编辑同步对象功能来增加或者减少同步对象时,首次编辑的对象可以设置映射关系,已经在同步关系中的对象不可设置映射。
  • 若目标库是PG类(如GaussDB(DWS)、GaussDB(for openGauss)和PostgreSQL),目的库的schema名称不能设置为以pg_开头,否则会迁移失败。
  • 以下链路,不支持包含smallserial, serial, bigserial 这3个类型的表进行schema映射。
    • GaussDB(for openGauss)主备版->GaussDB(for openGauss)分布式版
    • GaussDB(for openGauss)主备版->GaussDB(for openGauss)主备版
    • GaussDB(for openGauss)分布式版->GaussDB(for openGauss)分布式版

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

库映射

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

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

    图1 库映射

  2. 修改库名。

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

    图2 修改库名

  3. 查看修改结果。

    库名修改成功后,您会看到修改前的库名和修改后的新数据库名,至此,表示完成库映射的配置。
    图3 查看库名修改结果

schema映射

schema指数据库对象的集合,这个集合包含了各种对象如:表、视图、存储过程、索引等。

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

  1. “设定同步”页面,同步对象右侧已选对象框中,选择需要进行映射的schema,单击“编辑”按钮。

    图4 schema映射

  2. 修改schema名。

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

    图5 修改schema名

  3. 查看修改结果。

    schema名修改成功后,您会看到修改前的schema名和修改后的新schema名,至此,表示完成schema映射的配置。
    图6 查看schema修改结果

表映射

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

  1. “设定同步”页面,同步对象右侧已选对象框中,选择需要进行映射的表,单击“编辑”按钮。

    图7 表映射

  2. 修改表名。

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

    图8 修改表名

  3. 查看修改结果。

    表名修改成功后,您会看到修改前的表名和修改后的新表名,至此,表示完成表映射的配置。
    图9 查看表名修改结果

分享:

    相关文档

    相关产品

close