终止imp/exp和expdp/impdp进程运行的方法
作者:孤风一剑   发布:2013-08-22 17:37   栏目:数据库开发   点击:2,613次   抢沙发 
一、停止EXP/IMP优化速度
可以直接KILL 进程,但先要KILL 父进程,然后KILL子进程,只KILL子进程,EXP/IMP还会在后台执行的
样例:ps -ef |grep imp 查询到pid,kill -9 pid 、kill -9 ppid,就可以了
 
二、停止EXPDP/IMPDP
这里就不能简单的用KILL进程来处理了,因为这里是一个JOB
1、EXPDP/IMPDP参数:
       ATTACH连接到现有作业, 例如 ATTACH [=作业名]。
JOB_NAME可以通过dba_datapump_jobs来查询:
sql>select * from dba_datapump_jobs
OWNER_NAME                     JOB_NAME                       OPERATION
------------------------------ ------------------------------ ------------------------------------------------------------
JOB_MODE                                                     STATE                              DEGREE ATTACHED_SESSIONS DATAPUMP_SESSIONS
------------------------------------------------------------ ------------------------------ ---------- ----------------- -----------------
SYSTEM                         SYS_EXPORT_FULL_01         EXPORT
FULL                                                         EXECUTING                               1                 1                 3
样例1:
C:\Documents and Settings\Administrator>expdp system/sys attach=SYS_EXPORT_FULL_01
Export: Release 11.2.0.1.0 - Production on 星期六 7月 13 23:53:55 2013
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
作业: SYS_EXPORT_FULL_01
  所有者: SYSTEM
  操作: EXPORT
  创建者权限: TRUE
  GUID: 7374DCC3E7D547B3B755865E4DB59F10
  开始时间: 星期六, 13 7月, 2013 23:53:57
  模式: FULL
  实例: tony
  最大并行度: 1
  EXPORT 个作业参数:
  参数名      参数值:
     CLIENT_COMMAND        system/******** directory=dir_dump dumpfile=dir_dump:bigtable.dmp logfile=dir_dump:bigtable.log full=y
  状态: IDLING
  处理的字节: 0
  当前并行度: 1
  作业错误计数: 0
  转储文件: d:\impdp\bigtable.dmp
    写入的字节: 5,177,344
Worker 1 状态:
  进程名: DW00
  状态: UNDEFINED
Export> stop_job
是否确实要停止此作业 ([Y]/N): y
是否确实要停止此作业 ([Y]/N): Y
是否确实要停止此作业 ([Y]/N): Y
是否确实要停止此作业 ([Y]/N): Y
是否确实要停止此作业 ([Y]/N): Y  ---------------就是停止不了,在dba_datapump_jobs还是能查到记录,只是JOB已经停止了。
-----已经解决了,需要输入YES
       Export> KILL_JOB
       是否确实要停止此作业 ([Y]/N): YES
在执行的时候CTL+C就可以进入交互模式,windows和LINUX下都是一样的。
重新进入EXPDP/IMPDP,就可以执行下面的交互命令:
$expdp username/password,
交互模式常用命令:
CONTINUE_CLIENT返回到记录模式。假如处于空闲状态, 将重新启动作业。
START_JOB 启动恢复当前作业。
STATUS在默认值 (0) 将显示可用时的新状态的情况下,要监视的频率 (以秒计) 作业状态。
STATUS=[interval]
STOP_JOB顺序关闭执行的作业并退出客户机。
STOP_JOB=IMMEDIATE 将立即关闭数据泵作业。
还有其他命令:
ADD_FILE向转储文件集中添加转储文件。
ADD_FILE=dirobjdumpfile-name
CONTINUE_CLIENT 返回到记录模式。假如处于空闲状态, 将重新启动作业。
EXIT_CLIENT 退出客户机会话并使作业处于运行状态。
HELP总结交互命令。
KILL_JOB分离和删除作业。
PARALLEL更改当前作业的活动 worker 的数目。
PARALLEL=worker 的数目。
START_JOB 启动恢复当前作业。
STATUS在默认值 (0) 将显示可用时的新状态的情况下,
要监视的频率 (以秒计) 作业状态。
STATUS=[interval]
STOP_JOB顺序关闭执行的作业并退出客户机。
STOP_JOB=IMMEDIATE 将立即关闭
本文固定链接: http://www.devba.com/index.php/archives/2395.html | 开发吧