ORACLE使用EXPDP和IMPDP数据泵进行导出导入的方法

前端之家收集整理的这篇文章主要介绍了ORACLE使用EXPDP和IMPDP数据泵进行导出导入的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_502_0@ORACLE使用EXPDP和IMPDP数据泵进行导出导入的方法

@H_502_0@使用expdp和impdp时应该注重的事项:

@H_502_0@1、exp和imp是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用。
2、expdp和impdp是服务端的工具程序,他们只能在oracle服务端使用,不能在客户端使用。
3、imp只适用于exp导出的文件,不适用于expdp导出文件;impdp只适用于expdp导出的文件,而不适用于exp导出文件
4、对于10g以上的服务器,使用exp通常不能导出0行数据的空表,而此时必须使用expdp导出。

@H_502_0@一、创建逻辑目录,该命令不会在操作系统创建真正的目录(请先创建真正的目录),最好以system等管理员创建逻辑目录。
sql>conn system/manger@orcl as sysdba
sql>create directory dump_dir as 'd:\test\dump';

@H_502_0@二、查看管理员目录(同时查看操作系统是否存在,因为oracle并不关心该目录是否存在,假如不存在,则出错)
sql>select * from dba_directories;

@H_502_0@三、给scott用户赋予在指定目录的操作权限,最好以system等管理员赋予。
sql>grant read,write on directory dump_dir to scott;

@H_502_0@四、用expdp导出数据

@H_502_0@1)导出用户
expdp scott/tiger@orcl schemas=scott dumpfile=expdp.dmp directory=dump_dir;

@H_502_0@2)导出表
expdp scott/tiger@orcl tables=emp,dept dumpfile=expdp.dmp directory=dump_dir;

@H_502_0@3)按查询条件导
expdp scott/tiger@orcl directory=dump_dir dumpfile=expdp.dmp tables=empquery='where deptno=20';

@H_502_0@4)按表空间导
expdp system/manager@orcl directory=dump_dir dumpfile=tablespace.dmptablespaces=temp,example;

@H_502_0@5)导整个数据库
expdp system/manager@orcl directory=dump_dir dumpfile=full.dmp full=y;

@H_502_0@五、用impdp导入数据

@H_502_0@1)导入用户(从用户scott导入到用户scott)
impdp scott/tiger@orcl directory=dump_dir dumpfile=expdp.dmp schemas=scott;

@H_502_0@2)导入表(从scott用户中把表dept和emp导入到system用户中)
impdp system/manager@orcl directory=dump_dir dumpfile=expdp.dmptables=scott.dept,scott.emp remap_schema=scott:system;

@H_502_0@3)导入表空间
impdp system/manager@orcl directory=dump_dir dumpfile=tablespace.dmp tablespaces=example;

@H_502_0@4)导入数据库
impdb system/manager@orcl directory=dump_dir dumpfile=full.dmp full=y;

@H_502_0@5)追加数据impdp system/manager@orcl directory=dump_dir dumpfile=expdp.dmp schemas=systemtable_exists_action

猜你在找的Oracle相关文章