WEB开发网
开发学院数据库Oracle 怎样在Oracle数据库中高速导出/导入 阅读

怎样在Oracle数据库中高速导出/导入

 2007-05-10 12:16:50 来源:WEB开发网   
核心提示: 并行操作您可以通过 PARALLEL 参数为导出使用一个以上的线程来显著地加速作业,每个线程创建一个单独的转储文件,怎样在Oracle数据库中高速导出/导入(3),因此参数 dumpfile 应当拥有和并行度一样多的项目,您可以指定通配符作为文件名,select sid, serial#f

并行操作

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

  expdp ananda/abc123 tables=CASES directory=DPDATA1
  dumpfile=expCASES_%U.dmp parallel=4 job_name=Cases_Export

注意 dumpfile 参数拥有一个通配符 %U,它指示文件将按需要创建,格式将为 expCASES_nn.dmp,其中 nn 从 01 开始,然后按需要向上增加。

在并行模式下,状态屏幕将显示四个工作进程。(在默认模式下,只有一个进程是可见的。)所有的工作进程同步取出数据,并在状态屏幕上显示它们的进度。

分离访问数据文件和转储目录文件系统的输入/输出通道是很重要的。否则,与维护 Data Pump 作业相关的开销可能超过并行线程的效益,并因此而降低性能。并行方式只有在表的数量多于并行值并且表很大时才是有效的。

数据库监控

您还可以从数据库视图获得关于运行的 Data Pump 作业的更多信息。监控作业的主视图是 DBA_DATAPUMP_JOBS,它将告诉您在作业上有多少个工作进程(列 DEGREE)在工作。另一个重要的视图是 DBA_DATAPUMP_SESSIONS,当它与上述视图和 V$SESSION 结合时将给出主前台进程的会话 SID。

  select sid, serial#
  from v$session s, dba_datapump_sessions d
  where s.saddr = d.saddr;

这条指令显示前台进程的会话。更多有用的信息可以从警报日志中获得。当进程启动时,MCP 和工作进程在警报日志中显示如下:

  kupprdp:master process DM00 started with pid=23,
  OS id=20530 to execute -
  SYS.KUPM$MCP.MAIN('CASES_EXPORT', 'ANANDA');
  
  kupprdp:worker process DW01 started with worker
  id=1, pid=24, OS id=20532 to execute -
  SYS.KUPW$WORKER.MAIN('CASES_EXPORT', 'ANANDA');
  
  kupprdp:worker process DW03 started with worker
  id=2, pid=25, OS id=20534 to execute -
  SYS.KUPW$WORKER.MAIN('CASES_EXPORT', 'ANANDA');

上一页  1 2 3 4  下一页

Tags:怎样 Oracle 数据库

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接