【问题标题】:Migrating data between 2 databases in Oracle 9i在 Oracle 9i 中的 2 个数据库之间迁移数据
【发布时间】:2009-11-06 18:02:01
【问题描述】:

我是 Oracle 的新手。由于我们重写了一个早期的应用程序,我们必须将数据从 Oracle 9i 中的早期数据库迁移到一个新的数据库,同样在 9i 中,具有完全不同的结构。列名和类型将完全不同。我们需要映射表和列,尽量导出尽可能多的数据,消除重复,并用默认值填充空值。

是否有任何工具可以帮助映射 2 个数据库的元素,具有处理重复的规则、默认值和迁移数据?

谢谢,

查克。

【问题讨论】:

    标签: oracle oracle9i


    【解决方案1】:

    如果您的目标是在两个非常不同的架构之间迁移数据,您可能需要一个 ETL 解决方案(ETL=Extract Transform L负载)。

    ETL 将允许您:

    • 从源数据库中选择数据 [提取]
    • 将业务逻辑应用于所选数据 [转换](处理重复项、默认值、将源表/列与目标表/列映射...)
    • 将数据插入新数据库[加载]

    大多数 ETL 还允许对负载进行某种自动化和报告(坏/丢弃的行...)

    Oracle 的 ETL 称为 Oracle Warehouse Builder (OWB)。它包含在数据库许可证中,您可以从 Oracle 网站下载。与大多数 Oracle 产品一样,它功能强大,但学习曲线有点陡峭。

    您可能想查看 SO 中的 [ETL] 部分,其中包括:

    【讨论】:

      【解决方案2】:

      在很多情况下,创建一个数据库链接和一些脚本a'la

      insert into newtable select distinct foo, bar, 'defaultvalue' from oldtable@olddatabase where xxx

      应该做的伎俩

      【讨论】:

        猜你喜欢
        • 2020-05-12
        • 1970-01-01
        • 2022-11-04
        • 2014-08-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-31
        • 2016-08-22
        相关资源
        最近更新 更多