Oracle调度Schedule特性是什么

网友投稿 342 2023-12-31

Oracle调度Schedule特性是什么

这篇文章主要讲解了“Oracle调度Schedule特性是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Oracle调度Schedule特性是什么”吧!

Oracle调度Schedule特性是什么

Job Classes 的概念,相当于创建了一个job组,DBA可以将那些具有相同特性的job,统统放到相同的Job Classes中,

然后通过对Job Class应用ORACE中的"资源使用计划"特性,就可以对这些job执行过程中所需要的资源分配情况进行管理。

1、创建Job Classes

使用DBMS_SCHEDULER包的CREATE_JOB_CLASS过程创建Job Classes

begin

  dbms_scheduler.create_job_class(myjobclass1);

end;

JOB_CLASS_NAME            要创建的Job Class的名称,注意指定的长度不要超过30个字符,也不要与现有Job Class同名

RESOURCE_CONSUMER_GROUP   指定创建的Job Class所在的RCG(Resource Consumer Group)

        你可以将其理解成一个资源分配的方式,处于相同RCG组中的用户、会话、或者对象共用一组资源,这组资源中可供分配的资源按照DBA指定的方式分配给RCG。

如果设计合理,通过这种方式,可以更有效的利用服务器的资源。

SERVICE                   指定创建的Job Class所在Service,本选项常见于RAC环境,我们都知道RAC环境由多实例+数据库组成,此处所指定的Service实际就是指Job Class会在哪个实例上运行。

注意:本参数与RESOURCE_CONSUMER_GROUP参数相互冲突,同一个Job Class只同设置两个参数中的一个值。

LOGGING_LEVEL 指定日志记录的级别,有下列三种级别

n  DBMS_SCHEDULER.LOGGING_OFF :关闭日志记录功能;

n  DBMS_SCHEDULER.LOGGING_RUNS :对该Job Class下所有任务的运行信息进行记录;

n  DBMS_SCHEDULER.LOGGING_FULL :记录该Job Class下任务的所有相关信息,不仅有任务的运行情况,甚至连任务的创建、修改等也均将记入日志。

LOG_HISTORY :指定日志记录的时间,以天为单位,比如指定LOG_HISTORY参数值为90,就表示日志信息保留最近90天的内容。

COMMENTS指定注释信息

上述各个参数,除了LOG_CLASS_NAME参数为必选参外,其它均为可选参数

2、查询系统中已经存在的Job Classes,可以通过DBA_SCHEDULER_JOB_CLASSES视图(或ALL_SCHEDULER_JOB_CLASS视图),例如:

select job_class_name,resource_consumer_group,service from dba_scheduler_job_classes where job_class_name = MYJOBCLASS1;

JOB_CLASS_NAME                 RESOURCE_CONSUMER_GROUP        SERVICE

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

MYJOBCLASS1

当创建Jobs时,可以通过JOB_CLASS参数来指定job所在的Job Class,如果不指定的话,创建的job默认属于DEFAULT_JOB_CLASS。

至于说如何查询创建的jobs属于哪个Job Class,查询*_SCHEDULER_JOBS视图中。

3、管理Job Classes

DBMS_SCHEDULER.SET_ATTRIBUTE 过程大家应当还记的,前面的小节中演示中使用该过程,修改job的属性,实际上SET_ATTRIBUTE也同样可以用来修改Job Class的属性,

操作方法与修改job属性完全相同,只不过作用函概的范围更广,修改Job Class后,该Job Class下属的所有job属性都会被级联修改(当前正运行的不会立刻生效,将等到下次运行时生效)。

举个例子:修改刚刚创建的MY_FIRST_JC的日志保存时间

begin

DBMS_SCHEDULER.SET_ATTRIBUTE(MYJOBCLASS1,LOG_HISTORY,30);

end;

Job Class可被修改的属性,即创建时可选择指定的那5个属性。

4、 删除Job Classes

DBMS_SCHEDULER 包提供了DROP_JOB_CLASS过程,用来删除Job Classes。该过程调用非常简单,例如,删除刚刚创建的MYJOBCLASS1,执行命令如下:

begin

DBMS_SCHEDULER.DROP_JOB_CLASS(MYJOBCLASS1);

end;

如果有多个Job Classes需要删除,并不需要多次执行DROP_JOB_CLASS,只需要在为该过程指定值时,参数值间以逗号分隔即可。

感谢各位的阅读,以上就是“Oracle调度Schedule特性是什么”的内容了,经过本文的学习后,相信大家对Oracle调度Schedule特性是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Oracle体系结构分析
下一篇:MySQL字符集和校对规则是什么
相关文章

 发表评论

暂时没有评论,来抢沙发吧~