如何从多个数据库中提取数据并使用Oracle Goldengate复制到具有不同表结构的一个数据库?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (172)

我有6个表从4个数据库中的每一个中提取数据。我必须在单个数据库的6个表中复制所有数据。目标表只有一个额外的列'instance_id',表明我们从哪个数据库获取数据。现在,每个数据库都有一个提取过程,目标数据库中有4个重复过程。我想在使用OGG复制在目标表中输入行后立即自动更新“instance_id”列。我知道有一个SQLEXEC语句可以在OGG中运行SQL查询。我不知道在哪里以及如何使用它来解决我的问题。

提问于
用户回答回答于

如果您有4个源,则有4组跟踪文件和4个重复项。在replicats中包含MAP列中的instance_id。此外 - 如果从4个源获取数据将导致主键冲突,则必须在PK定义中包含instance_id。看起来像: MAP schema.table,TARGET schema.table, COLMAP(USEDEFAULTS,instance_id = 1), KEYCOLS(pkcol,instance_id);

扫码关注云+社区

领取腾讯云代金券