我们需要将一些表和模式从 Oracle 数据库移动到 MS SQL Server 数据库。我们只有 Oracle 转储文件。我们将它们导入 Oracle 数据库。然后我们需要使用复制工具将数据从 Oracle 移动到 SQL Server。是否可以绕过复制工具进行移动任务?是否可以使用 Oracle RMAN 或 DUMP 文件将数据从 Oracle 移动到 SQL Server?谢谢...
我们需要将一些表和模式从 Oracle 数据库移动到 MS SQL Server 数据库。我们只有 Oracle 转储文件。我们将它们导入 Oracle 数据库。然后我们需要使用复制工具将数据从 Oracle 移动到 SQL Server。是否可以绕过复制工具进行移动任务?是否可以使用 Oracle RMAN 或 DUMP 文件将数据从 Oracle 移动到 SQL Server?谢谢...
不,我不认为这是可能的。这两种工具都使用 Oracle 特定的文件格式,并且只能与 Oracle 数据库一起使用。因此,从 Oracle exp 或 expdp 工具创建的 Oracle 转储文件中移动数据的方法是将转储导入 Oracle 数据库,然后将其从该数据库移动到 SQL Server 数据库。
注意 1: Quest 的 Toad 能够读取 Oracle 导出转储,我不能 100% 确定是否存在破解 Oracle 转储格式的工具来读取数据并将其写入 SQL 服务器。
注 2:可以将数据从 Oracle 数据库迁移到 Microsoft SQL Server 数据库。显然,Oracle 对此类迁移不太感兴趣,但 Microsoft 对此很感兴趣,因此您应该在 Microsoft 页面上搜索工具,例如,这里有一个适用于 Oracle 12c 和 SQL Server 2017 的工具。HR 是 Oracle 提供的示例模式。Oracle 9i 是一个相当旧的版本,所以我不确定这是否适用于 Oracle 9i。
注3:我认为你更详细地描述整个问题是有道理的。为什么要将数据复制到系统中,有什么要求和约束。数据的大小是多少,您要迁移什么类型的对象,......也许打开一个描述整个场景的新问题是有意义的。也许您在这里提出的问题并不能真正帮助您解决最初的问题。
我认为您也不能直接从 Oracle 转储中恢复 SQL,但如果您在 Oracle 中恢复它,您可以创建一个 SSIS 包,该包将使用到 Oracle 的连接器从 Oracle 读取数据并将其写入 SQL。
我希望它会有所帮助。
您可以使用Oracle Golden Gate。它将元数据从 oracle 复制到任何非 oracle 数据库,反之亦然。如果数据仅在转储文件中可用,则可能没有帮助。