这是个自动收集STATS的作业, 我重建了, 还是用MAINTENANCE_WINDOW_GROUP的计划.   但是看对象的统计信息并没有更新.  SCHEDULER_JOB_LOG中也没有显示成功或失败. 没有记录.

手动执行,  EXEC DBMS_SCHEDULER.RUN_JOB ('GATHER_STATS_JOB'); 可以成功完成,

exec DBMS_SCHEDULER.create_job ( job_name => 'GATHER_STATS_JOB',program_name => 'GATHER_STATS_PROG', SCHEDULE_NAME=>'MAINTENANCE_WINDOW_GROUP',enabled=> TRUE,auto_drop=>FALSE);

EXEC DBMS_SCHEDULER.set_attribute ( name => 'GATHER_STATS_JOB', attribute => 'RESTARTABLE',  value => TRUE);

SELECT JOB_NAME,AUTO_DROP,RESTARTABLE ,STATE,program_name,schedule_name,LAST_START_DATE ,NEXT_RUN_DATE  from dba_scheduler_jobs;

JOB_NAME                       AUTO_ RESTA STATE           PROGRAM_NAME         SCHEDULE_NAME        L AST_START_DATE                NEXT_RUN_DATE

------------------------------ ----- ----- --------------- -------------------- -------------------- ------------------------------ ------------------------------

GATHER_STATS_JOB        FALSE  TRUE   SCHEDULED  GATHER_STATS_PROG MAINTENANCE_WINDOW_GROUP

WINDOW_NAME              WIND ENABL ACTIV REPEAT_INTERVAL                                                        DURATION

------------------------ ---- ----- ----- ---------------------------------------------------------------------- ---------------------------------------------------------------------------

WEEKNIGHT_WINDOW         LOW  TRUE  TRUE  freq=daily;byday=MON,TUE,WED,THU,FRI;byhour=22;byminute=0; bysecond=0  +000 08:00:00

WEEKEND_WINDOW           LOW  TRUE  FALSE freq=daily;byday=SAT;byhour=0;byminute=0;bysecond=0                    +002 00:00:00

看手册上, 只要EXEC DBMS_SCHEDULER.ENABLE ('JOB_NAME') 就可以了.

另外, 我自己建了SCHEDULE, 然后建JOB, 也不执行, 手动可以, 再然后不用SCHEDULE, 用INTERVAL 方法在JOB创建时候设定, 也是只能手动执行成功.

求解 ?

这是LOGICAL STANDBY, 但是应该没关系吧 ?

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐