零度zero

导航

oracle 调度作业不执行,解决步骤

背景:有一个视图,关联条件太多,造成查询时效率很低。并且客户对于该视图数据的实时性要求不高。

 

解决思路:由于实时性要求不高,关联条件很多。因此考虑做成调度作业,每天晚上空闲时间执行。

 

 方式一:1.建立作业,在作业里设置执行频率,可以直接写pl/sql代码块。

     遇到问题建立作业不执行,需要开启oracle的作业队列进程参数,默认是关闭的

         方法:show parameter job_queue_processes  ;//为0代表未开启

            alter system set job_queue_processes=6;//开启6个

    2. 测试下,选为立即执行

    遇到问题:执行后,没得到想要的结果。因为sql语句执行太慢,任务一直再运行中。

         方法:优化sql语句,将not in  改成  left join    ,in 改成  inner join 

  方式二: 建立一个程序,建立一个调度。然后再调度里关联程序。

 

posted on 2022-03-29 19:07  零度zero  阅读(463)  评论(0编辑  收藏  举报