博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
oracle定时任务失效
阅读量:7050 次
发布时间:2019-06-28

本文共 684 字,大约阅读时间需要 2 分钟。

发现系统数据没有更新,查看oracle定时任务,估计没有执行。

发现next_date变成了4000/1/1 ,broken被选中。

select * from user_jobs发现该任务失败次数达16次。

查得如下原因:

  当任务运行失败时,SNP过程在1分钟后将再次试图运行该任务。如果这次运行又失败了,下一次尝试将在2分钟后进行,再下一次在4分钟以后。任务队列每次 加倍重试间隔直到  它超过了正常的运行间隔。在连续16次失败后,任务就被标记为中断的(broken),如果没有用户干预,任务队列将不再重复执行。

  当将一个任务的next_date参数赋值为null时,则该任务下一次运行的时间将被指定为4000年1月1 日,也就是说该任务将永远不再运行。在大多数情况下,这可能是我们不愿意  看到的情形。但是,换一个角度来考虑,如果想在任务队列中保留该任务而又不想让其 运行,将next_date设置为null却是一个非常简单的办法。

 

手动test该定时任务,发现了报错原因,是插入ipv6的ip失败,将其删除。将定时任务恢复,重新执行,执行成功则失败次数将重置0.

将任务停掉的方法:

  dbms_job.broken(v_job,true,next_date);        //停止一个job,v_job可写job号,里面参数true也可是falsenext_date(某一时刻停止)也可是sysdate(立刻停止)。

转载于:https://www.cnblogs.com/peterpanzsy/archive/2013/04/10/3011852.html

你可能感兴趣的文章
linux目录结构
查看>>
Guarded Suspension
查看>>
centos7.5 安装git客户端
查看>>
搞大数据,需要关注的东西
查看>>
win平台安装gridcontrol11R1的agent
查看>>
Docker image的工作原理
查看>>
Baruch Computing and Technology Center (BCTC)
查看>>
rehhat5.5搭建各种dns服务器(4)
查看>>
set unused的用法(ORACLE删除字段)
查看>>
计算机专用英语词汇1695个词汇表
查看>>
致敬那些运维过程中踩到的坑
查看>>
腾讯-开源版蓝鲸智云配置平台试用
查看>>
bonding
查看>>
Eclipse AspectJ
查看>>
天融信不可取
查看>>
新商盟订烟自动获取可订烟数量及自动填充数量
查看>>
Unit20 Is this seat taken?
查看>>
linux下安装mongodb
查看>>
IPv4和IPv6共存
查看>>
分享到微信微博QQ的简单实现(二)
查看>>