我们要反对重新造轮子这种做法,因为有很多人已经做过同样的事了,我们可以参考
yangtingkun高人的blog不错,可以先读读
从10g数据泵和导入导出性能对比共4篇文章中,能得到以下信息:
1)有EXP常规模式、EXP直接路径模式和EXPDP三种方式
2)40g的数据
EXP常规模式导出 1小时24分钟
exp zhejiang/zhejiang file=/data1/zj_regular.dmp buffer=20480000
EXP直接路径模式导出 18分钟
exp zhejiang/zhejiang file=/data1/zj_direct.dmp buffer=20480000 recordlength=65535 direct=y
(仍然用buffer是为了lob数据类型考虑)
expdp导出 14分钟
expdp zhejiang/zhejiang dumpfile=zj_datapump.dp directory=d_test schemas=zhejiang
imp 导入 3小时17分钟
imp zhejiang/zhejiang file=/data1/zj_regular.dmp full=y buffer=20480000 log=/data1/zj_regular.log
impdp导入 3个小时8分钟
impdp zhejiang/zhejiang DUMPFILE=zj_datapump.dp DIRECTORY=d_test FULL=y LOGFILE=zj_datapump.log
impdp导入 parallel 不到2个半小时
impdp zhejiang/zhejiang DUMPFILE=zj_datapump.dp DIRECTORY=d_test FULL=y LOGFILE=zj_datapump.log parallel=2
Oracle数据泵为了提高性能,采用直接路径的方式,通过数据库建立的DIRECTORY将数据导入。
这造成了数据泵和IMP一个主要的区别。如果在客户端进行IMP导入,dmp文件是放在客户端的。但是如果通过数据泵的方式导入,数据泵文件总是放在数据库服务器端。
采用这种方式,可以避免导入数据在客户端和服务器端传递,提高导入速度
综上所述,如果你是10g的数据库,通常都不会有让你可以边喝茶边迁移的机会,还是考虑expdp和impdp吧,40g的数据要14+150=190min时间,还没算准备、出错处理等时间,平均下来15g/h不到。
阅读(1769) | 评论(0) | 转发(0) |