`
futeng
  • 浏览: 264145 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Oracle数据泵EXPDP/IMPDP工具使用(按用户导出和导入)

阅读更多

1. Oracle环境变量配置

Oracle路径配置
可通过expdp help查看工具使用环境。通常对于未配置Oracle环境变量,会报以下使用错误:

 

UDE-00013: Message 13 not found; No message file for product=RDBMS, facility=UDE
UDE-00019: You may need to set ORACLE_HOME to your Oracle software directory

 出现上述问题是因为无法找到$ORACLE_HOME目录。尝试配置Oracle重要的环境变量,source /home/oracle/.bash_profile重新配置环境试试。

 

 

2. 创建Directory转储文件目录

该目录用来存放转储文件,目录必须存在且用户得有权限写。

 

-- sqlplus
create directory dump_dir as '/home/oracle/oradir';

 

 

当然如果使用的是普通用户来操作数据,你还需要给用户赋权限:

 

grant read, write directory on direcotry crxj_dump_dir to scott;

 查看当前所有Directory

 

 

select * from dba_directories;

 

 

OWNER DIRECTORY_NAME DIRECTORY_PATH
SYS DUMP_DIR /home/oracle/oradir

注意创建的需要确实存在

当目录不存在会报出如下错误(示例为sys用户):

[oracle@CRXJ_APP_218 bin]$ expdp sys/orcl directory=dump_dir dumpfile=schema_pon.dmp schemas=pon

Export: Release 11.2.0.1.0 - Production on Tue May 6 18:34:36 2014

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

UDE-28009: operation generated ORACLE error 28009
ORA-28009: connection as SYS should be as SYSDBA or SYSOPER

Username: sys as sysdba
Password: 

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-39002: invalid operation
ORA-39070: Unable to open the log file.
ORA-29283: invalid file operation
ORA-06512: at "SYS.UTL_FILE", line 536
ORA-29283: invalid file operation

 

此时需要创建该目录

[oracle@CRXJ_APP_218 bin]$ mkdir /home/oracle/oradir
[oracle@CRXJ_APP_218 bin]$ ls /home/oracle/oradir

 

至此配置好环境,也配置好存放转储文件的路径,接下来就可以导入导出了。


示例将使用sys用户,采用按用户模式导出crxj_collect用户下所有结构和数据,并导入到同用户名的另外一个数据下。

按用户(模式)导出

-- expdp username/passwd dirctory=转储文件存放目录 dumpfile=要生成的转储文件名 schemas=用户名(可多个并用逗号分开)
-- 导出CRXJ_COLLECT用户[shell中直接执行]
expdp sys/orcl directory=dump_dir dumpfile=schema_crxj_collect.dmp schemas=crxj_collect

 

[oracle@CRXJ_APP_218 oradir]$ expdp sys/orcl directory=dump_dir dumpfile=schema_crxj_collect.dmp schemas=crxj_collect

Export: Release 11.2.0.1.0 - Production on Tue May 6 20:48:19 2014

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

UDE-28009: operation generated ORACLE error 28009
ORA-28009: connection as SYS should be as SYSDBA or SYSOPER

Username: sys as sysdba
Password:

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Starting "SYS"."SYS_EXPORT_SCHEMA_01":  sys/******** AS SYSDBA directory=dump_dir dumpfile=schema_crxj_collect.dmp schemas=crxj_collect
Estimate in progress using BLOCKS method...
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 1.259 GB
Processing object type SCHEMA_EXPORT/USER
*****省略N多表******
. . exported "CRXJ_COLLECT"."HOST_SESSION"                   0 KB       0 rows
Master table "SYS"."SYS_EXPORT_SCHEMA_01" successfully loaded/unloaded
******************************************************************************
Dump file set for SYS.SYS_EXPORT_SCHEMA_01 is:
  /home/oracle/oradir/schema_crxj_collect.dmp
Job "SYS"."SYS_EXPORT_SCHEMA_01" successfully completed at 20:50:49

[oracle@CRXJ_APP_218 oradir]$

 

导入到指定用户(模式)

由于是导入到远程库,所以还需要创建下转储文件所在目录

-- 省略掉如何把导出的转储文件移动到指定远程库目录下
SQL> create directory dump_dir as '/home/oracle/oradir';

Directory created.

SQL>

 

-- 导入数据
-- impdp 用户名/密码 DIRECTORY=转储文件所在目录 DUMPFILE=带导入的转储文件名 SCHEMAS=待导入的用户(模式)名
impdp sys/orcl DIRECTORY= dump_dir DUMPFILE=schema_crxj_collect.dmp SCHEMAS=CRXJ_COLLECT;

 

因为不要求导出和导入的是同一个用户,所以数据泵这个工具可以方便的在不同用户(模式)见传到数据对象。
数据泵高级操作中可以实现数据对象的逻辑恢复,包括按表、按用户模式(本文即是),按表空间和全库导入导出。

更多内容有待更新,敬请期待。

转载请标明原文链接。

ifuteng@gmail.com :)

 

 

 

1
0
分享到:
评论

相关推荐

    ORACLE EXPDPIMPDP 参数详解

    从 10g 开始,不仅保留了原有的 EXP 和 IMP 工具,还提供了数据泵导出导入工具 EXPDP 和 IMPDP。 使用 EXPDP 和 IMPDP 时需要注意的事项: 1. EXP 和 IMP 是客户端工具程序,可以在客户端使用,也可以在服务端使用...

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

    Oracle 的 IMPDP 和 EXPDP 是两个强大的数据泵工具,用于将 Oracle 数据库中的数据导入或导出到其他数据库或文件中。在本文档中,我们将详细介绍如何使用 IMPDP 和 EXPDP 工具来实现全备数据库的导入和导出。 一、...

    expdp/impdp命令详解

    这两个命令允许用户高效地导出和导入数据库对象和数据,包括表、视图、索引、存储过程等。下面将详细解释这两个命令的相关参数和使用方法。 1. **DIRECTORY参数** DIRECTORY=directory_object 是用来指定转储文件...

    oracle数据迁移.docx

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

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

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

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

    Oracle 数据导入导出 imp/exp 命令是 Oracle 数据库管理系统的重要组件之一,用于实现数据的导入和导出。imp/exp 命令可以将数据从远程数据库服务器导出到本地的 dmp 文件,或者将 dmp 文件从本地导入到远程的数据库...

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

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

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

    这种方法通常使用Oracle Data Pump工具(expdp 和 impdp)来实现,它允许在数据库运行时执行数据导出和导入,从而避免了停机时间对业务的影响。以下是关于使用expdp/impdp进行非归档迁移的关键知识点: 1. **迁移前...

    【数据泵】EXPDP导出表结构(真实案例).pdf

    - 使用数据泵工具可以导出和导入表结构、索引、函数、包和存储过程等元数据信息。 - 导出(EXPDP)和导入(IMPDP)操作是基于参数文件进行的,参数文件中可以指定需要导出或导入的数据类型、对象和过滤条件等。 2...

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

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

    oracle数据迁移expdp,impdp

    Oracle数据库的迁移是数据库管理中的常见任务,其中expdp(Export Data Pump)和impdp(Import Data Pump)工具是Oracle提供的高效数据导入导出解决方案。这两个实用程序在Oracle数据库环境中扮演着至关重要的角色,...

    ORACLE数据泵impdp与expdp

    Oracle 数据泵(Data Pump)是 Oracle 10g 引入的一种高级数据迁移技术,它提供了更快、更灵活的数据导出和导入功能。数据泵主要包括两个主要工具:EXPDP(Export Data Pump)和 IMPDP(Import Data Pump)。这两个...

    expdb/impdp使用方法

    impdp是Oracle数据泵导入工具,负责将expdp导出的文件导入到数据库中。它支持多种导入模式,如替换现有对象、只导入数据而不创建对象等。impdp同样具有并行执行能力,能快速恢复大量数据。在使用impdp时,我们需指定...

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

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

    Oracle_10G使用数据泵(EXPDP和IMPDP)

    Oracle 数据泵(Data Pump)是 Oracle 10g 版本引入的一种高效的数据导入导出工具,它通过 EXPDP 和 IMPDP 命令提供了一种快速的方法来迁移数据库对象或数据。与传统的 EXP 和 IMP 工具相比,数据泵提供了更高级的...

    Oracle数据泵导入导出

    Oracle数据泵(expdp/impdp)是一种非常强大的工具,它不仅提供了高效的数据库数据传输能力,而且还支持各种灵活的数据导出和导入选项。对于需要在Oracle数据库之间迁移数据的应用场景来说,使用数据泵能够极大地...

    oracle expdp&impdp;

    Oracle EXPDP & IMPDP 是 Oracle 数据库中最常用的数据导出和导入工具,它们可以快速地将数据从一个数据库导出到另一个数据库中。EXPDP(Data Pump Export)是 Oracle 10g 及更高版本中引入的一款高性能的数据导出...

Global site tag (gtag.js) - Google Analytics