网络编程
位置:首页>> 网络编程>> 数据库>> 教你怎样在Oracle数据库中高速导出/导入(2)

教你怎样在Oracle数据库中高速导出/导入(2)

作者:fen  发布时间:2009-02-04 16:59:00 

标签:Oracle数据库,高速导出,导入

让我们来分析该命令的各个部分。用户 ID/口令组合、表和转储文件参数的意义是显而易见的。与原来的导出不同,文件是在服务器(不是客户端)上创建的。位置由目录参数值 DPDATA1 指定,它指向之前创建的 /u02/dpdata1。这个进程还在目录参数指定的位置上创建一个日志文件(同样在服务器上)。默认地,这个进程使用一个名称为 DPUMP_DIR 的目录;因此可以创建它来代替 DPDATA1。

注意上面的参数 job_name,这是个特殊的参数,在原来的导出中没有。所有的 Data Pump 工作都通过作业来完成。Data Pump 作业 — 与 DBMS 作业不同 — 只是服务器进程,它代表主进程处理数据。主进程(称为主控制进程)通过高级队列 (AQ) 来协调这项工作;它通过在运行期内创建的一个特殊的表(称为主表)来实现这个目的。在我们的例子中,如果您在 expdp 运行时检查用户 ANANDA 的模式 ,您将注意到一个表 CASES_EXPORT 的存在(对应参数 job_name)。当 expdp 结束时,这个表被丢弃。

导出监控

当 Data Pump Export (DPE) 运行时,按 Control-C;它将阻止消息在屏幕上显示,但不停止导出进程本身。相反,它将显示 DPE 提示符(如下所示)。进程现在被认为处于“交互式”模式:

Export>

这种方法允许在这个 DPE 作业上输入几条命令。要查看概要,在提示符下使用 STATUS 命令:

Export> status

Job:CASES_EXPORT

Operation:EXPORT

Mode:TABLE

State:EXECUTING

Degree: 1

Job Error Count: 0

Dump file:/u02/dpdata1/expCASES.dmp

bytes written = 2048

Worker 1 Status:

State:EXECUTING

Object Schema:DWOWNER

Object Name:CASES

Object Type:TABLE_EXPORT/TBL_TABLE_DATA/TABLE/TABLE_DATA

Completed Objects: 1

Total Objects: 1

Completed Rows: 4687818

记住,这只是状态显示。导出在后台工作。要继续在屏幕上查看消息,从 Export> 提示符下使用命令 CONTINUE_CLIENT。

并行操作

您可以通过 PARALLEL 参数为导出使用一个以上的线程来显著地加速作业。每个线程创建一个单独的转储文件,因此参数 dumpfile 应当拥有和并行度一样多的项目。您可以指定通配符作为文件名,而不是显式地输入各个文件名,例如:

expdp ananda/abc123 tables=CASES directory=DPDATA1

dumpfile=expCASES_%U.dmp parallel=4 job_name=Cases_Export

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com