ITPub博客

首页 > 数据库 > Oracle > Oracle Kill 正在运行的 Job

Oracle Kill 正在运行的 Job

Oracle 作者:yu5782647 时间:2014-03-26 23:30:13 0 删除 编辑


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 p

WHERE s.paddr = p.addr

AND s.sid = :sid;

  

For Windows, at the DOS Prompt: orakill sid spid

For UNIX at the command line> kill '9 spid

Ussually 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 a10

SQL> 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;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24577884/viewspace-1130331/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2013-05-15

  • 博文量
    32
  • 访问量
    223038