Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103650438
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Oracle

2008-04-15 13:35:38

    来源:赛迪网技术社区    作者:yuanyaung

代码清单4 中所创建的窗口其定义带有一个内嵌调度表,这就是说该调度表是该窗口定义的一部分。还有可能将一个窗口连接到一个单独定义的调度表。你可以更进一步将一个窗口和几个相关的任务连接到相一个调度表,这样,当该调度表被触发时,该窗口的资源计划将被激活,所有连接到该调度表的任务便开始运行。

如果你有一些任务,只希望它们在窗口及其资源计划被激活时运行,那么你可以根据窗口而不是根据预定的调度表来调度这些任务。如果你有两个或多个窗口共享同一个资源计划,则你可将这些窗口结合成一个窗口组。以下语句说明了如何创建一个包含夜间和周末运行的窗口的批处理窗口组:

  
  BEGIN
  DBMS_SCHEDULER.CREATE_WINDOW_GROUP(
  group_name=>'batch_processing',
  window_list=>'NIGHT,WEEKEND');
  END;
  

监控与日志

这一新的调度程序提供了卓越的监控和日志工具,它们特别便于通过Oracle 企业管理器 10g的数据库控制界面来使用。图 3 给出了你可以从"调度程序任务"页看到的已排定的任务列表。点击"运行"选项卡可以查看当前运行的任务。点击"运行历史"选项卡,你会看到类似于图 4中的一个日志。 每个日志条目表示一个任务实例,你可以立即看到哪个实例运行成功了,哪个实例运行失败了。点击一个任务名称可以深入到一任务,你还可以进一步深入查看每次运行的详细日志条目。 日志条目将被保存你所指定的一段时间。你可以为日志条目指定一个全局保持时间,你也可以为不同的工作类定制日志条目的保持时间。调度程序将每天检查一次已经超过其保持时间的日志条目,并将它们删除。

  

图3: 调度程序的已排定任务选项卡

   

图4: 调度程序的任务运行历史选项卡

对于任何希望减少调度、管理和监控重复性任务的单调乏味程度的DBA来说,这一新的调度程序及其在数据库控制中的强力支持都是深受欢迎的技术成就。程序、调度表、任务、任务类、窗口和窗口组的体系结构是一个功能强大的特性集,并且为在未来版本中进一步提高打下了基础。相对于编写PL/SQL表达式来计算任务执行时间间隔的老DBMS_JOB方法,日历语法的使用更简单、更可靠。这一新的调度程序可以提供很多功能。请很好地利用它吧。

阅读(346) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~