kill运行中的JOB的问题

[复制链接]
查看11 | 回复6 | 2007-9-26 18:42:10 | 显示全部楼层 |阅读模式
系统中有一个JOB,由于SQL编写的问题,导致运行了5个多小时还没完,我想把它kill掉。
1. 首先我找到了这个JOB对应session的SID和对应的OS JOB进程(j000等)的SPID。
select * from gv$process s,gv$session gnwhere s.ADDR=gn.PADDR and gn.STATUS='ACTIVE' and gn.SCHEMANAME='A'复制代码
2. 然后,在OS上kill对应的SPID
$> kill -9 SPID复制代码
3. 过一分钟左右的时间,再次查询gv$session,发现此session还在,SPID变了,在OS上自动产生了一个j000进程与此session对应。
4. 将job设成broken状态,再次 kill -9 SPID。过一分钟左右此session没了,OS也没再产生新的job进程。
5. 问题来了,虽然此时session和OS进程都没有与此JOB相关的东东存在,但此JOB的运行时间(total_time)仍在不停增加。
6. 尝试解决方法:
(1)重启cjq0这个进程 无效
(2)重启DB 无效
如何解决这个total_time不停增加的问题?
请各位大虾不吝赐教,谢谢。
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
重建job?
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
重建。。。。
他是不断累加的。。。。
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
原帖由 lx_csut 于 2008-8-19 16:21 发表
重建job?

谢谢。
如果重建JOB会不会有“后遗症”?
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
原帖由 tuqing777 于 2008-8-19 16:37 发表

谢谢。
如果重建JOB会不会有“后遗症”?

你确定你的执行时间,再确定interval。。。。
否则一个JOB还没结束,下一个又起来了。。。。
很耗资源。。。
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
原帖由 vogts 于 2008-8-19 16:39 发表
你确定你的执行时间,再确定interval。。。。
否则一个JOB还没结束,下一个又起来了。。。。
很耗资源。。。

谢谢。
interval 为null
此JOB已被设为broken了。
没有出现 “否则一个JOB还没结束,下一个又起来了。。。。”的状况
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
感谢各位的回复。
JOB已经被我重建了,没发现其它异常情况。
我搞不清楚的是,为什么JOB都停了,那个total_time却一直增长的问题。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行