Chinaunix首页 | 论坛 | 博客
  • 博客访问: 231195
  • 博文数量: 47
  • 博客积分: 1630
  • 博客等级: 上尉
  • 技术积分: 972
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-20 12:52
文章存档

2013年(12)

2012年(6)

2010年(27)

2009年(2)

我的朋友

分类: Oracle

2013-09-24 10:55:54

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;

 

阅读(2152) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~