扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:builder.com.cn 2007年4月11日
DBMS_SCHEDULER是Oracle 10G中新增的一个包,与老版本的DBMS_JOB包相比,DBMS_SCHEDULER有很多新特性,比如说,更容易规范开始时间和间隔时间,也能在PL/SQL上指定计划执行操作系统命令。其中DBMS_SCHEDULER新特点中最好的一个是,它与资源管理器紧密结合起来了。
资源管理器是Oracle的一部分,它允许分割资源,例如,它可以分割CPU时间,在各种会话之间登陆Oracle。会话可以被分配到一个用户资源组,然后资源计划在用户资源组之间对可用资源进行分配。
DBMS_SCHEDULER有两个特点与资源管理器有密切的联系,它们是:作业类和计划窗口。
作业类
作业类是计划作业的一种。可以将多个作业指派给同一个作业类,但是每个作业每次只能指派给一个作业类。作业类其中一个属性是,它能包含类中与所有作业相联系的用户资源组的名称。这就意味着,以前在作业类中的作业在得到资源后要分配给指定的用户资源组,但现在不需要了。
举个例子来说,你创建一个名为BATCH_REPORTS的作业类,然后将它与名为REPORTS_CONSUMER_GROUP的用户资源组建立联系。当你新建一个report作业时,仅仅是指派给了BATCH_REPORTS作业类,它将作为REPORTS_CONSUMER_GROUP的一个成员来运行。
计划窗口
计划窗口就是预定义时间周期,它有名称,开始时间和持续时间。计划窗口在它开始时间到达的时候“打开”,在它的持续时间到达的时候“关闭”。计划窗口将资源计划作为它的一个属性:当这个窗口打开的时候,在该窗口中,Oracle将当前资源计划自动切换到开始使用指定的资源。
继续先前那个例子,如果你有两个资源计划,名称分别为DAY_PLAN和NIGHT_PLAN,这两个计划窗口在它们之间自动切换。DAY_WINDOW窗口在6:00 A.M启动,然后激活DAY_PLAN计划,NIGHT_WINDOW窗口在10:00 P.M启动,然后激活NIGHT_PLAN计划。DAY_PLAN限制REPORTS_CONSUMER_GROUP的成员不能多于可用CPU资源的百分之二十五,允许交互用户优先选择;NIGHT_PLAN却不是这个比例,它允许report作业占用CPU资源的百分之七十五。
如果你想得到关于DBMS_SCHEDULER的更多信息,可以参考Oracle Administrator's Guide的第27章,Using the Scheduler."
小技巧
翻阅Oracle文档,学习关于Oracle更多的小技巧。
Bob Watkins(OCP、MCDBA、MCSE、MCT)是一位有25年经验的计算机专业人士,从事过技术培训师、顾问与数据库管理员等职。
责任编辑:德东
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者