日期:2014-05-16  浏览次数:20473 次

oracle 如何查找和kill 对应的job进程
查找当前被锁住的进程:

SELECT object_name, s.sid, s.serial#, p.spid
  FROM v$locked_object l, dba_objects o, v$session s, v$process p
 WHERE l.object_id = o.object_id
   AND l.session_id = s.sid
   AND s.paddr = p.addr;



Kill 对应的Oracle Session

    应为BROKEN后该JOB还在运行,如果要求该JOB立刻停止,就需要找到该job的对应SESSION(SID,SERIAL#),然后执行以下命令:
ALTER SYSTEM KILL SESSION 'sid,serial#';



将Job Queue Processes的数目修改为0

    首先确认当前的Job Queue Processes的数目
    SQL> select name,value from v$parameter where name ='job_queue_processes';
    然后将Job Queue Processes的数目修改为0
   
ALTER SYSTEM SET job_queue_processes = 0;

     保证所有的JOB都会停止。


恢复job_queue_processes的原始值

    
ALTER SYSTEM SET job_queue_processes = original_value;



http://www.cnblogs.com/hoojo/p/oracle_procedure_job_interval.html