oracle job之前还可以自动执行,后来不能自动执行?

通过ps -ef |grep ora_j查看oracle 的job进程,未发现相关的job进程;

[oracle@ncb1dg ~]$ ps -ef |grep ora_j
oracle 13527 24508 0 15:13 pts/4 00:00:00 grep ora_j

查看all_jobs 视图查看job最后执行时间和下一次执行时间等详细信息

select log_user,priv_user,schema_user,last_date,next_date,broken,interval from all_jobs where broken='N';

log_userpriv_userschema_userlast_datenext_datebrokenintervaltesttesttest2015/11/1615:232015/11/1615:24Nsysdate+1/(24*60)testtesttest2015/11/1615:182015/11/1615:28NSYSDATE+10/1440testtesttest2015/11/1615:242015/11/1615:29Nsysdate+5/(24*60)

发现jobs没有中断,以及通过DBA_JOBS_RUNNING查看相关的job也没有hang住。

通过查看当前数据库的job_queue_processes也大于0 ,job还是无法自动执行

SQL> show parameter job

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
job_queue_processes integer 10

后来发现由于修改了OS时区导致的。解决方法:

1、重启数据库。

2、修改OS时区,修改系统时间,重新执行job。