繁体   English   中英

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

[英]Best way to export huge data from Oracle DB to Oracle DB

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

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

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

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

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

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

非常感谢。

使用Oracle DataPump aka expdp和impdp Oracle数据泵概述请参阅使用数据泵导出的 示例和使用数据泵导入的示例

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

您可以使用以下选项之一:

  1. SQL Loader(您可能已经尝试过)。
  2. 传统数据导出和导入(exp / imp命令)。
  3. Oracle数据泵(expdp / impdp)。

另外,如果您需要定期执行此操作,则可以使用oracle Scheduler或Shell脚本进行调度。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM