how-to-kill-the-running-job

转自:http://levicorp.com/2009/05/22/how-to-kill-the-running-job/

1. Check the running Job (From here you will get the SID thatrunning the Job)

SQL> SELECT * FROM DBA_JOBS_RUNNING;


2. Make Job become Broken/offline

BEGIN SYS.DBMS_IJOB.BROKEN(job#,TRUE); END;SQL> BEGIN SYS.DBMS_IJOB.BROKEN('136451',TRUE); END;


3. Kill the Oracle’s Session

SQL> ALTER SYSTEM KILL SESSION 'sid,serial#';


4. Kill the O/S Process ID (PID)(一般完成该步骤即可)

SELECT p.spid FROM v$session s, v$process pWHERE s.paddr = p.addrAND s.sid = :sid; For Windows, at the DOS Prompt: orakill sid spidFor UNIX at the command line> kill '9 spidUssually Oracle Job running with Process Name : ora_j00%


5. Check if the Job is Still Running

SQL> SELECT * FROM DBA_JOBS_RUNNING;


6. Determine the Current Number of Job Queue Processes

SQL> col value for a10SQL> select name,value from v$parameter where name = 'job_queue_processes';


7. Alter the Job Queue to Zero

SQL> ALTER SYSTEM SET job_queue_processes = 0;This will bring down the entire job queue processes.


8. Validate that No Processes are Using the Job Queue

SQL> SELECT * FROM DBA_JOBS_RUNNING;


9. Mark the DBMS_JOB as Not Broken

BEGIN SYS.DBMS_IJOB.BROKEN(job#,FALSE); END;


10. Alter the Job Queue to Original Value

SQL> ALTER SYSTEM SET job_queue_processes = original_value;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值