从 Oracle 导出到 SQL Server/mySQL

从 Oracle 导出到 SQL Server/mySQL

我有一个 Oracle 数据库,我们很快就会删除它。但我想将一些数据存储在其他地方,以便在需要时可以访问。

有没有标准/推荐的方法来做到这一点?考虑过导出到 XML 中,然后将 XML 导入 SQL Server...还是推荐这种方法?

谢谢,

答案1

XML 不是在 RDBMS 之间移动大量数据的良好传输协议。我宁愿使用 SSIS 并以此方式从 Oracle 加载数据。或者使用 Oracle 批量导出工具。XML 非常臃肿,最适合存储非结构化数据或在未知来源之间移动少量数据。

答案2

如果您不确定要将数据恢复到哪个 rdbms,并且不想转储结构,则可以使用外部表(类型为 oracle_datapump)将其转储到 oracle 服务器上的文件中,作为 .csv 文件。这应该很容易导入到任何 rdbms 中。

另一种方法是将数据存储为 (ANSI-)sql 导入语句(与 xml 类似,虽然冗长,但压缩效果好)。之后可以轻松编辑这些语句。

您可以使用 exp/imp 或 dbms_metadata.get_ddl('table', 'schema', 'user') 将结构的 ddl 转储到文本文件中,但您必须对 (Oracle-) ddl 进行大量调整才能适应其他 rdbms。

相关内容