Loading

6、数据泵导入导出操作


6.0、数据泵导入导出注意事项:

1、EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用;

2、数据泵的导出导入可以使用dba用户(管理所有的表空间),也可以使用普通用户(比如开发权限,只能管理自己的表空间),

但是普通用户需要授权转存储目录可读可写;

3、在下面的实验中使用的是dba用户进行操作;

6.1、登录到oracle实例:

[oracle@slave-node2 ~]$ echo $ORACLE_SID

orcl

[oracle@slave-node2 ~]$ sqlplus sys/123456@orcl as sysdba

SQL>show parameter name;

6.2、数据泵存储目录:

1、查看数据泵的存储目录:

select * from dba_directories;

DATA_PUMP_DIR /application/oracle/admin/orcl/dpdump/

#这是系统自带的转存储目录;

2、创建自己需要的转存储目录:

create directory <目录名> as '<目录路径>';

#目录必须要存在且权限能被oracle用户访问;

3、补充:

(1)删除转存储目录:

DROP DIRECTORY <目录名>;

(2)将转存储目录权限授权给用户:

grant read,write on directory <目录名> to <用户名>;

6.3、数据泵导出:

1、说明:如果导出的转存储文件已经存在,将会报错;

2、按用户导出:

expdp system/123456@orcl DIRECTORY=DATA_PUMP_DIR DUMPFILE=DAMS.DMP logfile=DAMS.log schemas=dams;

expdp <dba用户名>/<dba密码>@<数据库实例名> directory=<转存储目录> dumpfile=<转存储文件> logfile=<日志文件> schemas=<表空间用户名>

3、按表空间导出:

expdp system/123456 DIRECTORY=DATA_PUMP_DIR DUMPFILE=DAMS.DMP logfile=DAMS.log TABLESPACES=DAMS;

4、按表名导出:

连接哪个用户,就备份该用户表空间下的表;

expdp dams/dams@orcl DIRECTORY=DATA_PUMP_DIR DUMPFILE=BHL_TABLE.DMP logfile=BHL_TABLE.log TABLES=BHL_ROLE,BHL_USER;

5、导出整个库:

expdp system/123456@orcl DIRECTORY=DATA_PUMP_DIR DUMPFILE=ORCL_FULL.DMP logfile=ORCL_FULL.log FULL=y;

6.4、数据泵导入(dba):

1、按用户导出和按表空间导出的导入方法:

(1)前提条件是需要创建新的表空间和用户;

(2)导入:

impdp system/123456@orcl DIRECTORY=DATA_PUMP_DIR DUMPFILE=DAMS.DMP logfile=DAMS.log remap_schema=dams:dams remap_tablespace=dams:dams;

impdp <dba用户名>/<dba密码>@<数据库实例名> directory=<转存储目录> dumpfile=<转存储文件> logfile=<日志文件> remap_schema=<原表空间用户名>:<现有表空间用户名> remap_tablespace=<原表空间名>:<现有表空间名>;

remap_schema=a:b #将数据的schema从a 转换为b;

remap_tablespace=a:b #将数据的tablespace从a转换为b;

2、还原备份的表:

(1)还原时该表必须不存在,否则报错;

(2)还原表时必须连接备份表的用户否则报错;

(3)还原:

impdp dams/dams@orcl DIRECTORY=DATA_PUMP_DIR DUMPFILE=BHL_TABLE.DMP logfile=BHL_TABLE.log TABLES=BHL_ROLE,BHL_USER;

(4)特殊用法:

impdp dams/dams@orcl DIRECTORY=DATA_PUMP_DIR DUMPFILE=BHL_TABLE.DMP logfile=BHL_TABLE.log TABLES=BHL_ROLE,BHL_USER remap_schema=dams:dams1 remap_tablespace=dams:dams1;

dams需要dba权限;

3、还原备份的全库:

impdp system/123456@orcl DIRECTORY=DATA_PUMP_DIR DUMPFILE=ORCL_FULL.DMP logfile=ORCL_FULL.log FULL=y;




posted @ 2020-02-16 00:41  云起时。  阅读(1310)  评论(0编辑  收藏  举报