> 数据库 > Oracle >

Oracle数据泵远程导入文件到本地数据库

--以dba身份登录
 C:\Users\Administrator>sqlplus / as sysdba
 --创建用户
 SQL> create user bfzg0828 identified by bfzg0828 default tablespace users quota
 unlimited on users;
 --授予连接角色,资源角色给用户
 SQL> grant connect,resource to bfzg0828;
 

授权成功。
 --授权创建数据链接
 SQL> grant create table,create database link to bfzg0828;
 


授权成功。
 --创建目录
 

SQL> create or replace directory Oracle_exp as 'D:\oracle';
 

目录已创建。
 

--在物理机上d盘创建文件oracle
 

......
 

--给用户授予目录读写权限
 


SQL> grant read,write on directory oracle_exp to bfzg0828;
 
grant read,write on directory oracle_exp to bfzg;
 

 

 

授权成功。
 

--以bfzg0828用户登陆
 

SQL> conn bfzg0828/bfzg0828
 已连接。
 

--创建网络数据库链接
 

SQL> create database link test113 connect to btv10_bz identified by btv10_bz using '192.168.0.66:1521/bttest';
 

 

数据库链接已创建。
 

--查询创建的网络链接
 

SQL> select * from global_name@test113;
 

GLOBAL_NAME
 -----------------------------------------------
 

BTTEST
 

SQL>
 

 

--使用expdp导出远程数据库到本地目录d:\oracle\bfzg0828.dmp
 C:\Users\Administrator>expdp bfzg0828/bfzg0828@orcl11g directory=DIR_EXP dumpfile=bfzg0828.dmp  logfile=bfzg0828.log  network_link=test113
 

--导出成功后,使用impdp导入到本地库
 

--这里是新建的用户bfzg用户,拥有connect,resouce角色权限,table_exists_action=replace表示,如果表存在则替换,imp没有功能
 impdp bfzg/bfzg directory=oracle_exp dumpfile=BFZG0828.DMP remap_schema=btv10_bz:bfzg  exclude=statistics table_exists_action=replace
 

注btv10_bz为导出用户,bfzg为本次导入用户
 BFZG0828.DMP导出用户是btv10_bz(btv10_bz/btv10_bz@192.168.0.66:1521/bttest)
 

--导入单个表
 impdp bfzg/bfzg directory=oracle_exp dumpfile=BFZG0828.DMP  tables=btv10_bz.bt_corp remap_schema=btv10_bz:bfzg  exclude=statistics  table_exists_action=replace

(责任编辑:IT)