4. 由于我的实验中,远程库和本地库之间网络不是很好,因此实际效果上,exp和expdp都比较慢,也是因为用了dblink的方式,就没再深入了,这里只是为了说明expdp/impdp如何实现远程数据库的导出。
后经同事测试,一个800MB的文件,使用exp导出大约用了1小时,expdp只需要不到10分钟,请注意,这里未使用COMPRESSION参数。
有人说这是由于exp和expdp导出机制决定的,exp导出过程实际是由select执行的加载数据,放到buffer cache,再传到export客户端写入dump文件。expdp则是采用直接路径模式,直接从磁盘读取,写入PGA,再传到export客户端写入dump文件。没有经过buffer cache缓存就一定程度决定了他的导出速度。
5. 网上有人说“expdp/impdp是服务端程序,影响他的只有磁盘IO”,从上面的介绍看,是不完全准确的,expdp/impdp是客户端工具,执行时调用的是数据库服务器端的两个PL/SQL包,上面的实验也是通过dblink进行的远程导入,并未在服务器端使用。
----------------------------华丽丽的分割线----------------------------
Oracle 10g expdp导出报错ORA-4031的解决方法
Oracle 10gr2 rac expdp 报错UDE-00008 ORA-31626