oracle数据库中怎么看job跑没跑完?

oracle数据库中怎么看job跑没跑完?,第1张

dba_jobs_running,这张表内没有一般就是跑完了。可以查一下dba_jobs看一下最后运行时间确认。

当然要是schedule-job那么在这张表内是查不到的,要去dba_scheduler_jobs里面查。还有一个 user_scheduler_job_run_details这里可以查询scheduler_job的运行情况。

可以通过lasttime减去(nexttime-lasttime)*totaltime 换算成秒计算出Createtime时间

例子如下: 其中49为Job名称

select last_date,

to_date(to_char(last_date, 'yyyymmddHH24miss'), 'yyyymmddHH24miss') -

1 / 24 / 60 / 60 * (next_date - last_date) * 24 * 60 * 60 * total_time createdate,

(next_date - last_date) * 24 * 60 * 60 * total_time startonowsecond

from dba_jobs

where job = '49'

您好,数据库job执行超时的原因可能是由于网络问题、资源不足、数据库设置不当等原因造成的。

首先,您可以检查网络是否正常,检查是否存在网络延迟或者中断,如果存在网络问题,可以尝试重新连接或者更换网络环境。

其次,您可以检查数据库资源是否足够,比如CPU、内存、磁盘空间等,如果资源不足,可以尝试增加资源或者优化数据库。

最后,您可以检查数据库设置是否正确,比如查询优化器参数、索引设置、缓存大小等,如果设置不当,可以尝试优化数据库设置。

总之,数据库job执行超时的原因可能是由于网络问题、资源不足、数据库设置不当等原因造成的,您可以根据实际情况进行检查和优化,以解决数据库job执行超时的问题。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10040200.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存