`
jsczxy2
  • 浏览: 1270867 次
  • 性别: Icon_minigender_1
  • 来自: 常州
文章分类
社区版块
存档分类
最新评论

使用expdp/impdp远程导入导出oracle数据

阅读更多
--进入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
分享到:
评论

相关推荐

    ORACLE EXPDPIMPDP 参数详解

    ORACLE EXPDP/IMPDP 是 Oracle 数据库中用于数据泵导出导入的工具,分别对应 EXP 和 IMP 工具。EXPDP/IMPDP 的出现使得 DBA 或开发人员可以将数据库元数据(对象定义)和数据快速移动到另一个 Oracle 数据库中。 ...

    expdp/impdp命令详解

    同样,使用IMPDP导入数据时,也需要指定DIRECTORY、DUMPFILE等参数,以及可能的过滤条件、重映射等选项。例如: ```bash impdp zftang/zftang@zftang directory=dmp dumpfile=test.dmp remap_schema=zftang:new_...

    Oracle数据导入导出imp/exp命令 10g以上expdp/impdp命令

    附录一:给用户增加导入数据权限的操作 1. 启动 sql*plus 2. 以 system/manager 登陆 3. create user 用户名 IDENTIFIED BY 密码 4. GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,DROP ANY VIEW,EXP_...

    oracle非归档不停机迁移数据的方法—expdp/impdp

    - 导入数据通常使用`impdp`命令,其语法与`expdp`类似,但包含额外的选项,如`TABLE_EXISTS_ACTION`来处理目标数据库中已存在的表。 8. **注意事项**: - 转义字符:在查询条件中,可能需要使用转义字符,例如`...

    oracle的impdp和expdp数据泵导入导出全备数据库-详细笔记文档总结

    Oracle 的 IMPDP 和 EXPDP 数据泵导入导出全备数据库详细笔记文档总结 Oracle 的 IMPDP 和 EXPDP 是两个强大的数据泵工具,用于将 Oracle 数据库中的数据导入或导出到其他数据库或文件中。在本文档中,我们将详细...

    exp,imp 与 expdp,impdp 对比 及使用中的一些优化事项.doc

    - **expdp/impdp**:必须在服务器端执行,利用服务器端的API完成数据导入导出任务。 **2. 模式与原理** - **exp/imp**: - **传统路径(Conventional Path)**:使用SQL SELECT语句来提取表数据,数据先读入buffer ...

    oracle数据迁移.docx

    数据泵 expdp/impdp 工具的最大优点之一就是效率,虽然测试没有达到 oracle 宣传的导出导入速度,但是确实比 exp/imp 有了一个量级的提升。效率的提升主要由于几个原因,首先充分利用直接路径方式,使得导入导出的...

    expdp impdp 数据库导入导出命令详解

    ### Oracle 11g expdp impdp 数据库导入导出命令详解 #### 一、创建逻辑目录 在进行数据的导入导出之前,首先需要创建一个逻辑目录。这个逻辑目录实际上是在Oracle数据库内部的一个概念,并不会在操作系统层面创建...

    oracle11g expdp impdp 分区表重映射导出导入数据迁移方案

    oracle expdp impdp 分区表重映射导出导入 数据迁移方案,以SI01用户为例子,将用户分区表导出后,将分区表重映射到新的表空间,完成数据迁移和检查。照方案例子按步去做,一定能成功。

    expdb/impdp使用方法

    在Oracle数据库系统中,expdp(Export Data Pump)和impdp(Import Data Pump)是用于进行大规模数据导出和导入的高效工具。这两个工具利用Oracle的数据泵技术,能够快速、高效地处理大量数据的迁移和恢复。 **...

    exp/imp2导入导出

    Oracle 提供了多种工具用于完成这项任务,其中 `exp` 和 `imp`(以及它们的新版本 `expdp` 和 `impdp`)是两个广泛使用的命令行工具,用于将数据库中的数据和对象导出为一个文件或将该文件导入到数据库中。...

    window下Oracle 11g导出的EXPDP数据导入到linux

    在 Linux 服务器上,我们需要将 dump 文件拷贝到合适的目录下,例如 /u01/app/oracle/product/11.2.0/db_1/demo/schema/sales_history,然后使用 IMPDP 命令将数据导入到数据库中。 使用 EXPDP 和 IMPDP 命令可以将...

    Oracle expdp-impdp 数据泵导入导出(远程)

    2、创建逻辑目录用于导出导入数据(目录一定要真实存在) create or replace directory out_dir as 'C:\out'; --out_dir(逻辑目录名,可以随便取) 3、也可以将这个逻辑目录授权给其他用户 grant read,write on ...

    oracle expdp&impdp;

    这使得 EXPDP 能够以非常高的速度来导出和导入数据。 EXPDP 的基本语法为: ```sql expdp <username>/<password> tables=<table_name> directory=<directory_name> dumpfile=<dump_file_name> job_name= ``` 其中 `...

    Centos7.6下oracle impdp导入和expdp导出.docx

    本文档将详细介绍如何在 Centos7.6 操作系统环境下利用 Oracle 的数据泵功能(Data Pump)来进行数据的导出(expdp)和导入(impdp)。数据泵是 Oracle 提供的一种高效的数据迁移工具,它能够帮助用户快速地将数据库...

    账单中心数据泵expdp和impdp异机导入导出工作案例

    账单中心数据泵expdp和impdp异机导入导出工作案例

    expdp-impdp_用法详解

    EXPDP/IMPDP 是 Oracle 数据库中用于数据导出和导入的命令行工具。下面将详细介绍 EXPDP/IMPDP 的用法和相关参数。 一、创建逻辑目录 在使用 EXPDP/IMPDP 之前,需要创建逻辑目录,以便存放导出和导入的数据文件。...

Global site tag (gtag.js) - Google Analytics