exp与expdp全库导出数据对表空间、用户处理的测试

本文对比了Oracle中数据泵与EXP工具进行全库导入导出的操作及注意事项。通过不同场景测试,如用户不存在、表空间未建立等情况下的导入表现差异,总结了两种工具的特点与适用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有关传统导入导出,以及数据泵导入导出的说明,可以在命令后跟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/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值