oracle 远程导入导出dmp文件

转载 2015年11月20日 10:37:20
--进入sqlplus,先建立一个目录用来dump数据库
create directory dump_test as 'F:\xuyi\dump'  ;

--查看一下是否存在该目录
select * from dba_directories;

--授权给操作用户这个dump目录的权限
grant read, write on directory dump_test to xuyi;

--PS:下面是在命令行执行而不是在sqlplus,而且注意如果版本不一致请注明对方版本,如不注明schemas的话则默认导出登陆用户的数据

--导出:不能带分号结尾(Linux中需要切换到Oracle用户才能执行:su - oracle)
expdp xuyi/password@dbName schemas=db_user  directory=dump_test dumpfile=data.dmp  version=11.1.0.6.0 

--导入:不能带分号结尾
impdp xuyi/password@dbName directory=dump_test dumpfile=data.dmp

--想远程导入请使用NETWORK_LINK参数指定DB LINK,关于如何设置请参照如下文档:

--http://wenku.baidu.com/view/b67bfa06e87101f69e31953a.html

--xuyi是远程服务名
create database link link5 connect to scott identified by tiger using 'xuyi';
--查看是否生效
select * from global_name@link5;
--xuyi/password为本地账号密码,而link5中包含远程服务器账号密码
expdp xuyi/password network_link=link5 schemas=scott  directory=dump_test dumpfile=data.dmp
 

PS:如果expdp需要从高版本导出到低版本 必须在高版本上加上version=低版本号 这样低版本才能识别高版本的dmp文件

也有可能权限会有问题,如下:

 

在利用NETWORK_LINK方式导出的时候,出现了这个错误。
详细错误信息如下:
bash-3.00$ expdp yangtk/yangtk directory=d_temp dumpfile=jiangsu.dp network_link=test113 logfile=jiangsu.log tables=cat_org
Export: Release11.1.0.6.0 - 64bit Production on星期二, 16 9月, 2008 17:08:22
Copyright (c) 2003, 2007, Oracle.  All rights reserved.
连接到: Oracle Database11gEnterprise Edition Release11.1.0.6.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-31631:需要权限
ORA-39149:无法将授权用户链接到非授权用户
检查Oracle的错误手册:
ORA-39149: cannot link privileged user to non-privileged user
Cause: A Data Pump job initiated be a user with EXPORT_FULL_DATABASE/IMPORT_FULL_DATABASE roles specified a network link that did not correspond to a user with equivalent roles on the remote database.
Action: Specify a network link that maps users to identically privileged users in the remote database.
错误描述的比较清楚,不过这个错误很难理解,难道一个权限大的用户不能通过数据库链导出一个权限小的用户。
当然,了解了这个错误的原因,其实问题很容易解决。在本地创建一个新用户,不要授权EXP_FULL_DATABASE/IMP_FULL_DATABASE角色,就可以导出:
bash-3.00$ sqlplus "/ as sysdba"
SQL*Plus: Release11.1.0.6.0 - Production on星期二9月16 16:53:48 2008
Copyright (c) 1982, 2007, Oracle.  All rights reserved.

连接到:
Oracle Database11gEnterprise Edition Release11.1.0.6.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> col grantee format a15
SQL> col granted_role format a15
SQL> select grantee, granted_role from dba_role_privs
  2  where grantee = 'YANGTK';
GRANTEE         GRANTED_ROLE
--------------- ---------------
YANGTK          CONNECT
YANGTK          RESOURCE
YANGTK          DBA
SQL> drop user test cascade;
用户已删除。
SQL> create user test identified by test
  2  default tablespace users
  3  quota unlimited on users;
用户已创建。
SQL> grant connect to test;
授权成功。
SQL> grant create table, create database link to test;
授权成功。
SQL> grant read, write on directory d_temp to test;
授权成功。
SQL> conn test/test
已连接。
SQL> create database link test113 connect tojiangsuidentified byjiangsu
  2  using '172.0.2.113/test';
数据库链接已创建。
SQL> select * from global_name@test113;
GLOBAL_NAME
--------------------------------------------------------------------------------
TEST
SQL> exit


 

sqlplus连接远程oracle&&sqlplus导入、导出dmp文件

一、sqlplus连接远程oracle oracle远程登录解决办法 Oracle远程登录: 在cmd中:sqlplus    scott/tiger@oracle   //在tiger和@中间不...
  • zhangchaoming123
  • zhangchaoming123
  • 2016年08月31日 11:10
  • 1831

Oracle学习——dmp文件(表)导入与导出

前言       关于dmp我们用的还是比较多的,dmp文件它是作为oracle导入和导出表使用的文件格式,今天就将dmp文件导出和导入进行学习。   dmp文件导出       dmp文件导出用的比...
  • zwk626542417
  • zwk626542417
  • 2014年12月27日 19:30
  • 32218

数据泵使用的注意事项之远程导入导出

要求:将A库中的sehcme=user1中的所有对象迁移到B库; 说明:表空间DB只有一个scheme=user1,所以直接将表空间DB导入B。 步骤     1. 首先在A将表空间DB设置...
  • haiross
  • haiross
  • 2014年07月08日 16:23
  • 3932

Dmp文件的导入和导出总结

Dmp文件的导入和导出总结 先说导入 步骤: 先在实例(即服务)下建立表空间,再创建用户和密码。为了方便,可以将表空间,用户,密码设置为相同的值。 再对用户赋权限,可以赋为dba权限。 设置...
  • zhangfan1913775361
  • zhangfan1913775361
  • 2016年05月10日 15:11
  • 192

Oracle导出远程数据库再导入本地数据库-命令方式

Oracle导出远程数据库再导入本地数据库-命令方式
  • SinsiWoo
  • SinsiWoo
  • 2016年04月05日 12:23
  • 3673

oracle数据泵impdp远程导入,无需生成dumpfile文件

1.首先要在目标库上创建文件夹,创建的名称用于impdp的参数directory,注意指定的文件夹要存在 create or replace directory DMPDIR as 'd:\dmp'...
  • yebohuang
  • yebohuang
  • 2016年03月11日 15:32
  • 2380

Oracle远程导出dmp

在不设置dblink的qingkaun exp  ats003/ats003@10.1.13.26/ccictst2  file= c:\ats0812.dmp owner=ats003  ...
  • fujianianhua
  • fujianianhua
  • 2014年08月12日 19:07
  • 4043

expdp远程导dump文件到本地

1.建db link 创建dblink的语句为 CREATE DATABASE LINK CONNECT TO IDENTIFIED BY USING '' CREATE p...
  • lyb3290
  • lyb3290
  • 2016年12月16日 13:37
  • 135

将oracle远程数据库导出导入到本地

1.  exp wets/wets@192.168.0.16/orcl file=d:\daochu.dmp  也可以登录远程系统导出,
  • Test_LD
  • Test_LD
  • 2014年05月06日 14:46
  • 9676

windows下oracle的本地、远程导入导出

最近使用oracle的基本操作1、关于数据库的导入导出 不管是导入导出,最基本的还是本地需要安装oracle客户端,不然最基本的导入导出关键字都识别不了,这个是最基本的条件。 导入导出命令:imp、e...
  • personFeat
  • personFeat
  • 2016年12月21日 15:02
  • 959
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:oracle 远程导入导出dmp文件
举报原因:
原因补充:

(最多只允许输入30个字)