imp 只导入索引_EXP IMP 导入导出
发布日期:2021-06-24 15:05:24 浏览次数:2 分类:技术文章

本文共 2470 字,大约阅读时间需要 8 分钟。

1,导入导出用户下所有对象及数据

exp fanmeng/fanmeng@192.168.12.212/orcl file=c:\fanmeng.dmp

imp fanmeng/fanmeng@192.168.12.212/orcl file=c:\fanmeng.dmp

2,注意事项

①手工建库需要运行catalog.sql才能使用exp,imp

②整库导入导出权限,EXP_FULL_DATABASE,IMP_FULL_DATABASE两个角色授予DBA角色

③执行某些操作,如传输表空间,可能需要以sysdba身份运行,得这样:

exp \'sys/abc123@orcl as sysdba\'

④低版本导出,目标版本导入

⑤oracle_loader外部表只导出结构,不会导出数据;ORACLE_DATAPUMP外部表啥都不会导出,会导致导出失败,文件疯长,这应该是oracle的一个bug

⑥如果存在带导入的表,默认(ignore=n)将会忽略导入数据继续操作;也可以指定ignore=y无论表是否存在都导入。

3,参数文件parfile

参数文件中可以记录很多参数,一行一个参数

即使参数文件中指定了的参数,也可以在命令行中再次指定

原则上以最后读取到的参数为准

关键字 说明 (默认值) 关键字 说明 (默认值)

-----------------------------------------------------------------

USERID用户名/口令             FULL导出整个文件 (N)

BUFFER 数据缓冲区大小         OWNER所有者用户名列表

FILE输出文件 (EXPDAT.DMP)   TABLES表名列表

COMPRESS 导入到一个区 (Y)  RECORDLENGTH IO 记录的长度

GRANTS 导出权限 (Y)   INCTYPE 增量导出类型

INDEXES 导出索引 (Y)   RECORD 跟踪增量导出 (Y)

DIRECT 直接路径 (N)   TRIGGERS 导出触发器 (Y)

LOG 屏幕输出的日志文件      STATISTICS 分析对象 (ESTIMATE)

ROWS 导出数据行 (Y)   PARFILE参数文件名

CONSISTENT 交叉表的一致性 (N)     CONSTRAINTS 导出的约束条件 (Y)

4,处理模式

①整库导入导出,需要EXP_FULL_DATABASE,IMP_FULL_DATABASE角色权限或特权用户,参数FULL

②表空间,参数tablespace

③用户模式,可以导入导出用户自有对象,可以同时导出多个用户

④表模式,参数tables

5,QUERY条件导出,指定多个表时,必须确保所有表都满足query条件

exp fanmeng/fanmeng@orcl tables=(test) query="'where id>100'" file=test.dmp log=log.log

在linux、unix平台需要将通配符“  换成 \

6,导出几个用户的架构数据

exp system/abc123@192.168.12.212/ORCLowner=(test,fanmeng) file=test.dmp;

然后可以通过有dba角色权限的用户将数据一次性导入指定的多个用户test,fanmeng

imp  system/abc123 @192.168.12.212/ORCL full=yfile=test.dmp;

7,全库导出,只是逻辑上的全库,至导出了与用户数据相关的对象

exp system/abc123 full=y file=abc.dmp;

8,是否需要导出索引,约束,触发器,授权信息(grant)

exp system/abc123 full=y file=abc.dmp grants=n indexes=n constraints=n triggers=n;

9,限制导出文件大小,指定多个文件  filesize(默认单位字节)

exp system/abc123 full=y filesize=500m file=(1.dmp,2.dmp,3.dmp,4.dmp);

注意:①如果指定的文件多于实际生成的文件,多出的文件不会被生成

②如果指定文件少于实际生成的文件,则会提示输入新文件名

③查询用户所属对象实际占用空间

select sum(bytes)/1024/1024 M from user_segments

或查询多个用户

select owner,sum(bytes)/1024/1024/1024 G from dba_Segments where owner in... group by owner

10,将a用户数据导入到b用户

exp fanmeng/fanmeng@192.168.12.212/orcl tables=(test) file=fanmeng.dmp

imp fanmeng/fanmeng@192.168.12.212/orcl fromuser=fanmeng touser=test file=fanmeng.dmp

如果test用户对其默认表空间有unlimited权限的话,导入的表将会在源表空间中,而非test的默认表空间,所以需要考虑这个问题,侧小test对其默认表空间的unlimited权限

alter user test quota 20m on user2;

导入完毕后再修改过来:

alter user test quota unlimited on user2

11,如果源文件中都含有LOB,分区表,分区索引等类型的对象,必须首先在目标数据库中创建这些对象,然后再执行导入。

12,只导入结构,不导入数据 rows=n

imp fanmeng/fanmeng@192.168.12.212/orcl file=c:\fanmeng.dmp rows=n

转载地址:https://blog.csdn.net/weixin_33554514/article/details/113022719 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:flex 右对齐_flex布局快速入门
下一篇:打破双亲委派机制有什么用_面试官:java双亲委派机制及作用

发表评论

最新留言

初次前来,多多关照!
[***.217.46.12]2024年04月10日 17时58分06秒