我的编程空间,编程开发者的网络收藏夹
学习永远不晚

查杀oracle正在执行的job:job broken后,job的total time还在增长

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

查杀oracle正在执行的job:job broken后,job的total time还在增长

原帖地址 http://blog.csdn.net/flower_xixi/article/details/26373871
1.首先确定要停止的JOB号

select * from dba_jobs_running;--得到sid和job号

2.Broken你确认的JOB

可以在PL/SQL Developer中,直接选项broken;或者使用语句:

EXEC DBMS_JOB.BROKEN(job#,TRUE);--加入job号,注意commit

3.Kill 对应的Oracle Session

select * from v$session where sid='97' --根据sid号,得到SERIAL#

找到该job的对应SESSION(SID,SERIAL#),然后执行以下命令:

--ALTER SYSTEM KILL SESSION 'sid,serial#';

-- 如果使用ALTER SYSTEM KILL SESSION执行很长时间,其实可以使用OS的命令来快速KILL掉SESSION.步骤如下:

select * from v$session where sid='97'--根据sid号,得到paddr
select * from v$process where addr='6C8F14C4'    -- 加入paddr的值,得到spid的值,杀命令时用

 
     For Windows, at the DOS Prompt: orakill oraclesid spid--注意oraclesid为数据库实例名
     For UNIX at the command line> kill –9 spid

4.检查你的JOB是否还在运行

检查你要停止的JOB是否还在运行,其实多数情况下,应该都已经停止了。尤其执行的第三步的“杀手”命令。

如果真的还是没有停止,而且dba_jobs_running已经查不到该job了,则执行以下步骤;

5.select name,value from v$parameter where name ='job_queue_processes'; 
将Job Queue Processes的数目修改为0
ALTER SYSTEM SET job_queue_processes = 0;

job_queue_processes取值范围为0到1000,总共可创建多少个job进程由job_queue_processes参数来决定。

注:当Job Queue Processes的数目为0,所有的JOB都会停止。

6.修改你要修改的任何东西,甚至是JOB内的内容。将job执行的所有东西注掉,写return;否则不能编译

也可以将job里调用的所有存储过程内容都注掉,写return;编译。

7.修改完成后,将job的BROKEN状态停止。

SQL>EXEC DBMS_JOB.BROKEN(job#,FALSE);  --必须 commit

或者在PL/SQL Developer图形界面上操作,也一样;将job重新启起来。

8.恢复job_queue_processes的原始值

ALTER SYSTEM SET job_queue_processes = 10;

此时刷新几次job,total time一会儿就会停止增长。job彻底停止。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

查杀oracle正在执行的job:job broken后,job的total time还在增长

下载Word文档到电脑,方便收藏和打印~

下载Word文档

编程热搜

目录