oracle 11g 将表导入到其他用户的impdp命令

/*分为四步 */
/*第1步:创建临时表空间  */
create temporary tablespace yuhang_temp
tempfile 'D:\oracledata\yuhang_temp.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;

/*第2步:创建数据表空间  */
create tablespace TBS_SMDA_02
logging
datafile 'D:\APP\ZHP\ORADATA\ORCL\TBS_QXY_01.dbf'
size 400m
autoextend on
next 50m maxsize 20480m
extent management local;

/*第3步:创建用户并指定表空间  */
create user yuhang identified by yuhang
default tablespace yuhang_data
temporary tablespace yuhang_temp;

/*第4步:给用户授予权限  */
grant connect,resource,dba to yuhang;

今天需要另一个数据库的用户表导入到当前库中,但用户名不相同,以前exp/imp时,可以指定fromuser和touser来解决,在expdp中也提供了类似的解决方法

 

impdp system/zlsoft dumpfile=expdp:EXPDP_ZLHIS.DMP nologfile=y tables=zlhis.dept remap_schema=zlhis:scott remap_tablespace=ZL9BASEITEM:users,zl9indexhis
:users,zl9indexmtl:users table_exists_action=truncate exclude=object_grant

几个重要参数的说明一下:

1、remap_user 重新映射用户,格式:

source_user1:target_user1,source_user2:target_user2

2、remap_tablespace 重新映射表空间

3、 table_exists_action 表已经存在的动作 有效关键字: (SKIP), APPEND, REPLACE 和 TRUNCATE。

4、exclude=object_grant 跳过对象授权

(文/xiaoyan5686670)

本文来源:http://blog.itpub.net/22569416/viewspace-1966253/


如果给你带来帮助,欢迎微信或支付宝扫一扫,赞一下。