Oracle数据泵导出如何加速
金蝶云社区-huangyunzhi
huangyunzhi
1人赞赏了该文章 548次浏览 未经作者许可,禁止转载编辑于2018年09月21日 14:04:43

expdp system/system schemas=easuser1 directory=DUMPDIR dumpfile=easuser1_`date +%Y%m%d_%H%M%S`%U.dmp logfile=easuser1_`date +%Y%m%d_%H%M%S`.log exclude=table:\"like \'VT%\'\" compression=ALL parallel=4
----------------------------------------------
使用并行参数 parallel时需要注意,导出的文件数量必须也是多个才能真正提高导出速度,如果导出的文件只有一个的话,加并行参数是没有用的。怎么样导出的文件才生有多个呢?其实很简单,在dumpfile参数里面加一个%U就可以了,比如上面的导出语句,就会生成4个文件的导出文件。

导入的时候在dumpfile里面也加上%U这个参数就行了,比如导出生成了四个dump文件:
easuser1_20180921_00300101.dmp
easuser1_20180921_00300102.dmp
easuser1_20180921_00300103.dmp
easuser1_20180921_00300104.dmp

导入的时候参数设置成:dumpfile=easuser1_20180921_003001%U.dmp parallel=4,就会自动将4个文件导入。

另外,在导出的时候可以考虑加上参数:compression=ALL,通过压缩(注意,此参数只适于11g或以后的版本,10g版本不支持ALL选项,只支持压缩元数据,对减少导出文件影响不大,因此10g版本不建议使用),可以大大大减少备份文件对磁盘的占用(压缩之后一般只有原来的1/10~1/5大小),导入的时候不需要加这个参数,导入时会自动识别并解压