2006-12-14

利用Oracle数据泵完成数据导入和导出

来源: 本站收集整理 作者:佚名 评论 0 条
 

在Oracle 10g中, exp 和 imp 被重新设计为Oracle Data Pump(虽然Oracle 仍然装载了exp 和imp,并完全地支持它们)。假如你以前使用过exp 和 imp,那么Data Pump 的命令行程序的语法对你来说就不生疏了。

Data Pump 是运行在数据库内部的, 而不是像一个独立的客户端应用程序一样存在。这就意味着这部分的工作在一定程度上独立于发起执行导入或者导出任务的进程 。 在一台机器上 (例如一个定期任务) 可以开始执行导出的任务,而另一台机器上 (例如 DBA 的 手提电脑) 可以对任务的运行状态进行监控。 也正因为任务是运行在数据库内部的,所以假如你要将数据导出到一个文件中,那么你首先要做的事情就是为输出路径建立一个数据库的DIRECTORY 对象,然后给将要进行数据导入和导出的用户授权访问,命令如下:

 

 

  create or replace directory dumpdir as 'c:\';

  

  grant read,write on directory dumpdir to scott;

 
 

一旦该路经被授权后,就可以通过以下的命令参数导出用户的对象,这些命令与 exp 和 imp 中的命令非常相似:

 

 

  expdp scott/tiger directory=dumpdir dumpfile=scott.dmp
  

当导出工作开始执行以后,可以通过按下[Ctrl]C (或者是客户端中具有相同功能的按键) 来“中止”导出任务。这样就不会再有数据发送到你的客户端了,但是该任务在数据库中仍然还在运行。你的客户端会进入交互模式(出现Export>提示符)。 在提示符后输入status就可以查看到当前有哪些任务正在运行。假如在客户端输入expdp attach=<任务名>,你就可以连接到一个正在运行的任务上。

Data Pump 并不是一定要写入到文件中。现在可以通过选项设置就可以将数据库对象通过SQL*Net直接导到一个远程数据库中。你所要做的就仅仅是指定remote 选项,然后加上与远程数据库连接的连接字符串。 这就有点类似于对数据库的一次性复制过程。

Data Pump 执行起来要比原来的exp 和 imp 客户端命令快得多。Data Pump 运行得更快是因为它有一个新特性——“parallel”选项。选定这个选项后,Data Pump 将会以四个不同的线程同时压送数据。下面举个例子,我先执行下面的任务,然后按 [Ctrl]C,接着察看后台任务的状态:

 


(本文仅表明作者个人观点,不代表本站及其管理员立场.) 推荐 收藏 投稿 打印 返回 关闭
上一篇:Oracle数据库常见错误操作及解决方案  
下一篇:你可知道你的Oracle数据库安全吗?
    评论加载中…
 

  expdp scott/tiger directory=dumpdir dumpfile=scott2.dmp parallel=4

  job_name=scott2

  

  Export: Release 10.1.0.2.0 - Production on Friday, 31 December, 2004 14:54

  

  Copyright (c) 2003, Oracle. All rights reserved.

  

  Connected to: Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 -

  Production

  With the Partitioning, OLAP and Data Mining options

  FLASHBACK automatically enabled to preserve database integrity.

  Starting "SCOTT"."SCOTT2": scott/******** directory=dumpdir

  dumpfile=scott2.dmp parallel=4 job_name=scott2

  Estimate in progress using BLOCKS method...

  

  Export> status

  

  Job: SCOTT2

  Operation: EXPORT

  Mode: SCHEMA

  State: EXECUTING

  Bytes Processed: 0

  Current Parallelism: 4

  Job Error Count: 0

  Dump File: C:\SCOTT2.DMP

  bytes written: 4,096

  

  Worker 1 Status:

  State: EXECUTING

  

  Worker 2 Status:

  State: WORK WAITING

  

  Worker 3 Status:

  State: WORK WAITING

  

  Worker 4 Status:

  State: WORK WAITING
共2页: 上一页 1 [2] 下一页
 推荐文章
     

网站首页  -  网站地图 -   站长论坛  -  网站投稿  -    -  网站管理
Copyright © 2008 芜湖站长站 All Rights Reserved 皖ICP备07500611号