zoukankan      html  css  js  c++  java
  • oracle调度中使用schedule管理调度

    开始前,先说一句:作为dba应该禁止所有应用使用dbms_job。

    dbms_scheduler非常复杂,oracle在两本书中专门花费不少章节描述,这两本书分别是:

    1. Oracle® Database PL/SQL Packages and Types Reference
    2. Oracle® Database Administrator's Guide

    如果要详细了解调度,建议详细阅读第二本书,之后再阅读第一本书中的有关章节

    在云时代,资源管理变得非常重要,而dbms_scheduler可以紧密结合oracle自身的资源管理

    对于开发人员而言,常见的问题就是:如果一个作业的调度时间不是那么规律,则应该如何调度。

    这个好解决,可以使用dbms_scheduler.create_scheduler创建schedule对象,以下是例子:

    begin
      DBMS_SCHEDULER.create_schedule(schedule_name   => 'SCH_DAY_10_30',
                                     start_date      => systimestamp,
                                     repeat_interval => 'FREQ=DAILY; byhour=10;byminute=30');
    
      DBMS_SCHEDULER.create_schedule(schedule_name   => 'SCH_DAY_20_10',
                                     start_date      => systimestamp,
                                     repeat_interval => 'FREQ=DAILY; byhour=20;byminute=10');
    
      dbms_scheduler.create_job(job_name        => '我的SCH测试',
                                repeat_interval => 'SCH_DAY_10_30,SCH_DAY_20_10',
                                job_type        => 'PLSQL_BLOCK',
                                job_action      => 'BEGIN NULL;END;',
                                enabled         => TRUE,
                                auto_drop       => FALSE,
                                comments        => null);
    end;


    通过使用调度,有几个好处:

    1. 只需要修改调度,不需要修改作业
    2. 简单易懂
  • 相关阅读:
    周末给女友讲了遍加密算法,没想到...
    gradle执行打包并导出Apk到指定文件夹
    功能算法
    位运算之异或运算
    禁止ViewPager滑动
    macOS 去掉系统软件更新红点提示
    【转】Kotlin的inline内联函数
    Android Gradle Plugin v3.6.0/3.6.1 构建Bug
    IntelliJ IDEA UML插件
    【LeetCode 1. Two Sum】
  • 原文地址:https://www.cnblogs.com/lzfhope/p/oracle_scheduler_create_schedule.html
Copyright © 2011-2022 走看看