ITPub博客

首页 > Linux操作系统 > Linux操作系统 > exp与expdp全库导出数据对表空间、用户处理的测试

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

原创 Linux操作系统 作者:great_li 时间:2011-04-21 17:38:31 0 删除 编辑

有关传统导入导出,以及数据泵导入导出的说明,可以在命令后跟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。
说明学习资料/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博客 ” ,链接:https://blog.itpub.net/7969839/viewspace-693109/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-03-27

  • 博文量
    59
  • 访问量
    85697