Oracle把一个用户的数据导入另一个用户(数据泵)

192.168.0.1——server1

创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站制作、网站建设、北海街道网络推广、微信小程序定制开发、北海街道网络营销、北海街道企业策划、北海街道品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供北海街道建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com

1. 导出数据

 

[expdp版本]

使用expdp之前,需要现在Oracle里面建directory

1 、create directory dump as '/u01/dump';

 

授予用户对directory的read/write权限

2、grant read,write on directory  dump to [wyb];

用户需要resource或者dba的权限,才能expdp

3、grant resource to [wyb] ;

4、expdp wyb/123456 dumpfile= dump1.dmp logfile=expdp.log directory=dump1

192.168.0.1_server2

导入之前,清空目标用户所有的对象

最简单的办法,把目标用户删了再重建,或者新建

1、drop   user   sam   cascade; 同时会删除表空间数据

 

再创建用户//创建临时表空间//授予权限

2、CREATE TABLESPACE   sam  DATAFILE  'sam.dbf' 

SIZE 200M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

3、CREATE USER  sam IDENTIFIED BY 123456 DEFAULT TABLESPACE sam ;

 

4、grant connect,dba to [sam] ;

 导入数据

[impdp版本]

同样,使用impdp之前,需要现在Oracle里面建directory,如果有directory不需要在创建

1、create directory dump as '/u01/dump';

授予用户对directory的read/write权限

2、grant read,write on directory  dump to [sam];

授予用户dba权限

grant dba to [sam] ;

impdp user/password dumpfile=temp.dmp directory=dump remap_tablespace=[old_table_space]:[new_table_space]  ; old是指server1机器上的tablespace_name,new是指server2上的

impdp sam/123456  dumpfile=wyb-15032501.dmp directory=dump1 remap_tablespace=wyb:sam remap_schema=wyb:sam logfile=wyb-15032501.log

//导入数据后取消DBA权限

revoke dba from [sam];

//List directories

SELECT * FROM dba_directories;

如果出现tablespace存在,则先删除表空间

DROP TABLESPACE  xxb0001  INCLUDING CONTENTS AND DATAFILES;


文章题目:Oracle把一个用户的数据导入另一个用户(数据泵)
文章出自:http://pwwzsj.com/article/pipioe.html