Oracle数据库Job的下次执行时间老是变动问题
2016-09-02 10:52
281 查看
job的 interval设置为 sysdate+1 结果好多客户的这个时间最后会变的乱起八糟,
或是 导入 , 或是手动执行了等等, 还有自动会变的, 而且不少,
觉得莫名其妙, ,
今天网上搜了下 , 终于明白了其中的原因
并且也找到了解决办法,
比如,我要每天凌晨1点执行, interval就应该是:
表示 今天的凌晨 加 一天 加 一小时 ==>明天凌晨1点
原因:
SYSDATE会不稳定,但是不管是今天什么时候,trunc(sysdate) 返回的都是今天的 0点!!!!
so.... 只要job在当天完成都可以保证每天时间点基本一致!
如果要间隔半小时执行, interval就应该是:
[引用参考:http://www.itpub.net/thread-264556-1-1.html]
或是 导入 , 或是手动执行了等等, 还有自动会变的, 而且不少,
觉得莫名其妙, ,
今天网上搜了下 , 终于明白了其中的原因
由于oracle的job的时间检查周期的差异性 和 job进程数量及job并发量的问题 以及 job失败等原因导致job延后执行成功 都会导致 下次job的起点时间的变化(sysdate发生了变化)
并且也找到了解决办法,
比如,我要每天凌晨1点执行, interval就应该是:
trunc(SYSDATE)+1+1/24
表示 今天的凌晨 加 一天 加 一小时 ==>明天凌晨1点
原因:
SYSDATE会不稳定,但是不管是今天什么时候,trunc(sysdate) 返回的都是今天的 0点!!!!
so.... 只要job在当天完成都可以保证每天时间点基本一致!
如果要间隔半小时执行, interval就应该是:
TRUNC(sysdate,'HH24') + (trunc(to_char(sysdate,'mi')/30)+1)/(24*2)
[引用参考:http://www.itpub.net/thread-264556-1-1.html]
相关文章推荐
- JOB执行时间不断推后的问题
- JOB执行时间不断推后的问题研究
- 存储过程报错之后,后续语句如何执行,以及相关job下次执行时间怎样进行更新
- php max_execution_time执行时间问题
- 获得在查询分析器里执行程序的精确时间以及查询效率问题
- dbms_job submit后不按时间执行?
- C# SQL语句执行时间过长在操作完成之前超时时间已过或服务器未响应问题的解决
- oracle-crontab与oracle job在执行时间上的差异
- Oracle数据库中,有Job不能自动执行。
- 关于oracle数据库中的时间函数问题
- Oracle DBMS_JOB:每隔特定时间执行特定任务
- 取指时间,分析时间,执行时间,求指令时间问题。
- 这段时间好像Blog老是出问题
- oracle的SQL语句中同一函数执行的时间问题
- PHP脚本的最大执行时间问题
- 关于php页面最大执行时间问题(set_time_limit函数在windows下不起作用的解决)
- 关于oracle job定时执行的问题
- 修改job的执行间隔时间:sys.dbms_job.interval()
- 手动测试存储过程运行正常,job执行存储过程会长时间的处于运行状态,不手动停止,会一直运行不过去!
- 解决job重复执行的问题