将大量数据从Oracle DB导出到Oracle DB的最佳方法

Cyy*_*ils 1 sql database csv oracle

这是我在stackoverflow中的第一篇文章,我不得不说我真的很喜欢那个网站!

对于一个项目,我需要导出,然后将一些巨大的Oracle表从一个DB重新导入到另一个DB(大约1亿行30行)。

我的想法是将表导出到平面文件中,然后考虑到该架构已存在,然后将其重新导入到另一个空表中。

我正在使用PL / SQL Developer和/或SQL * Plus进行操作。

我已经测试了SQL * Loader,它似乎做得不错,但是我认为这确实很慢:导入具有30万行/百万行的CSV文件大约需要30秒。

您可以带来哪种解决方案?SQL * Loader是最好的工具吗?一些更好的工具已经存在?CSV是讨论大小和处理时间的更好格式吗?

非常感谢。

ik_*_*elf 5

使用Oracle数据泵又名EXPDP IMPDP和Oracle数据泵的概述使用数据泵导出的例子使用Data Pump导入的例子

确实没有必要自己编写程序,也没有任何方法可以胜过expdp / impdp。别忘了还有一个使用network_link的impdp选项。在这种情况下,您只需跳过dmp文件并直接导入目标数据库即可。可以从命令行使用impdp来完成,也可以通过pl / sql使用dbms_datapump来完成。有关文档,请参见PL / SQL程序包和类型参考