有关传统导入导出,以及数据泵导入导出的说明,可以在命令后跟help=y看简单说明。详细说明在联机文档的ultity一本书里。
test1作为原始库,创建用户lzl,默认表空间lzltbs,在其上建表lzltable (no number,text varchar2(20))
插入 1 aaa
2 bbb
两行数据。
作全库导出。(先测expdp,后exp)
create directory lzl as '/oracle/oradata/dump/';
impdp system/oracle@lzl directory=lzl dumpfile=exp1.dmp logfile=imp4.log table_exists_action=append full=y;
lzl作为目标库,IMPDP
一:数据文件目录不存在,直接报错,跳过,lzl表空间未建立。
二:数据文件目录存在,lzl用户不存在:导入时会建立lzl用户,与lzl表空间,数据正常导入。
三:数据文件目录存在,lzl用户存在,但默认表空间为lzl1。数据正常导入,但导入到lzltbs表空间,即原始库默认表空间。
四:lzl用户存在,默认表空间为lzltbs,且有lzltable表。 默认跳过已存在的表。table_exists_action选项提供参数:(SKIP), APPEND, REPLACE and TRUNCATE
测试append选项:首先往新的lzltable插入2条记录,与原始test1库一样。记录以叠加方式导入,会造成数据量很多。不建议使用,若做的全库导出,建议使用replace。
说明file:///D:/学习资料/oracle/disk/doc/server.102/b14215/dp_import.htm#sthref364
由此可见,数据泵的导出,全库情况下,不仅有表数据,还包括表空间的定义,表的存储属性跟随源库,这点需要注意。
导入时只要数据文件在os的目录存在即可。不用预先建立用户。
测试exp的全库:
一:无lzl用户,无表空间:报用户不存在,未导入,可以用from user touser来映射
二:建立lzl用户,默认表空间users:数据成功导入到users表空间
三:建立lzl用户,且lzltable表已存在,默认跳过,ignore=y以后,与append一样。
exp的导入导出,只要目的库用户建好,表空间等存储参数可以不管
exp灵活度比数据泵差。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7969839/viewspace-693109/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/7969839/viewspace-693109/