开始前,先说一句:作为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. 简单易懂

oracle调度中使用schedule管理调度的更多相关文章

  1. Oracle数据库中SYS、SYSTEM、DBSNMP、SYSMAN四用户的区别

    [转]   SYS.SYSTEM.DBSNMP. Oracle 数据库中 SYS.SYSTEM.DBSNMP.SYSMAN 四用户的区别 用户: SYS 用户: SYS,默认密码为 CHANGE_ON ...

  2. Spring中使用Schedule调度

    在spring中两种办法使用调度,以下使用是在spring4.0中. 一.基于application配置文件,配置入下: <bean id="jobDetail" class ...

  3. ORACLE调度之基于时间的调度(一)【weber出品】

    一.调度的概述 这里我看到一篇对调度的概述觉得描述的比我好,但仅限于概述部分,其他部分我觉得我讲的比他好,于是发生以下事情: ************************华丽的转载******** ...

  4. ORACLE调度之基于事件的调度(二)【weber出品】

    一.回顾 调度分基于时间的调度和基于事件的调度. 稍微复习一下前面的只是请浏览:<ORACLE调度之基于时间的调度(一)[weber出品]> 二.知识补充 1.队列:一种数据结构,就像一根 ...

  5. 如何在Web工程中实现任务计划调度

    转载自: http://www.oschina.net/question/146385_37793?sort=time 下面就Servlet侦听器结合Java定时器来讲述整个实现过程.要运用Servl ...

  6. golang中goroutine协程调度器设计策略

    goroutine与线程 /* goroutine与线程1. 可增长的栈os线程一般都有固定的栈内存,通常为2MB,一个goroutine的在其声明周期开始时只有很小的栈(2KB),goroutine ...

  7. SQL Server 2012中Task是如何调度的?

    SQL Server 2012中Task是如何调度的?[原文来自:How It Works: SQL Server 2012 Database Engine Task Scheduling]     ...

  8. Linux CFS调度器之task_tick_fair处理周期性调度器--Linux进程的管理与调度(二十九)

    1. CFS如何处理周期性调度器 周期性调度器的工作由scheduler_tick函数完成(定义在kernel/sched/core.c, line 2910), 在scheduler_tick中周期 ...

  9. Oracle存储过程中异常Exception的捕捉和处理

    Oracle存储过程中异常的捕捉和处理 CREATE OR REPLACE Procedure Proc_error_process ( v_IN in Varchar2, v_OUT Out Var ...

随机推荐

  1. 类的方法练习——定义MySQL类

    要求: 1.对象有id.host.port三个属性 2.定义工具create_id,在实例化时为每个对象随机生成id,保证id唯一 3.提供两种实例化方式,方式一:用户传入host和port 方式二: ...

  2. js实现图片延时加载的原理

    实现原理: 附:(http://www.cnblogs.com/fishtreeyu/archive/2011/03/12/1982067.html) 把所有需要延时加载的图片改成如下的格式: < ...

  3. 浅谈Socket编程

    浅谈Socket编程 说到Socket,想必大家会觉得陌生又熟悉.许多同学听说过Socket,但仅仅知道它翻译成中文叫做套接字,除此之外似乎并没有太多的了解了.那么今天我就来抛砖引玉地聊一聊Socke ...

  4. 仿照jQuery写一个关于选择器的框架(带了注释,请多多指教~)

    var select = (function () { //这是一个异常与捕获的代码,它表示的意思是:如果push方法出现了错误那么就需要重写push方法 try { //这边是自己模拟一个场景,来使 ...

  5. 三大集合框架之map

    Map 是一种把键对象和值对象映射的集合,它的每一个元素都包含一对键对象和值对象. Map没有继承于Collection接口 从Map集合中检索元素时,只要给出键对象,就会返回对应的值对象. Map是 ...

  6. python加解密

    from Crypto.Cipher import AES import base64 secret_key = '1234567890123456' # 密匙 msg_text = 'test so ...

  7. js如何完整的显示较长的数字

    试试下面一行吧 Math.pow(10, 99).toLocaleString().split(',').join('') toLocaleString([character]) 方法会将其对象转换成 ...

  8. Oracle 12C配置EM

    12C配置OEM同之前的版本差别较大,没有了emctl,而是直接使用如下方法配置: SQL*Plus: Release 12.1.0.2.0 Production on Tue Jul 19 07:1 ...

  9. python实现oracle数据泵导出功能

    脚本如下:[oracle@ycr python]$ more dump.py #/usr/bin/python#coding:utf8 import sysimport osimport time n ...

  10. leetcode 62、Unique Paths

    A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below). The ...