zoukankan      html  css  js  c++  java
  • oracle inside(9)

    作业是一个存贮程序,它被安排在特定的时间运行,或者在特定的事件发生后运行。
    9.1 DBMS_JOB 包
    DBMS_JOB 包是将作业提交到作业队列。作业队列是一个保存安排的作业的地方。通过作业队列,可以安排这
    些作业执行的时间以及执行的频度,还可以查找当前的关于当前运行的作业、终止的队列、作业调度的信息或其他
    作业的信息。
    过 程 名 描述
    BROKEN 禁止作业运行,如果代码被标记为损坏,Oracle 将不执行它
    CHANGE 修改指定作业的详细资料,如作业描述、作业运行时间或作业执行的间隔
    INTERVAL 修改指定作业执行的间隔
    NEXT_DATE 修改指定作业下一次执行的时间
    REMOVE 从队列中删除特定的作业
    RUN 强制执行特定的作业
    SUBMIT 将作业提交给作业队列
    WHAT 修改特定作业的作业描述
    9.2 使用后台进程
    Oracle 不是为每个用户调度或运行作业而运行同样的多个程序,从而浪费大量的资源;而是提供了SNP(快照
    刷新进程)后台进程,这些后台进程共享相同的函数和代码,这使它们能够监控可能的并发执行的 Oracle 进程。
    SNP 的一个关键功能是:作业失败而不降低数据库的性能;而且,SNP 进程按用户指定的时间间隔监控作业,
    PL/SQL 高级编程
    第 35 页 共 35 页
    启动所有需要执行的进程,然后等待下一个时间间隔。
    Oracle 最多可提供 10 个SNP 进程,它们被标识为 SNP0 到 SNP9。一些参数在文件init.ora 中定义。
    SNP 参数
    参 数 取值范围 默认值 描 述
    JOB_QUEUE_PROCESS 0 — 10 0 决定为每个实例启动的后台进程数
    JOB_QUEUE_INTERVAL 1 — 3600 60 SNP搜索要执行的作业的时间间隔(以
    秒为单位)
    JOB_QUEUE_KEEP_CONNECTIONS TRUE/FALSE FALSE
    如果为TRUE,则在作业完成之前所有的
    数据库连接都保持打开;否则,根据需
    要打开和关闭连接
    注意:每一个作业使用一个进程,因此不能有跨越多个进程执行的作业。如果JOB_QUEUE_PROCESS 被
    设置为0(默认值),则作业不能执行。一定要在init.ora中修改此参数。
    9.3 执行作业
    执行作业的方法有两种:
    1) 通过将作业提交到作业队列中实现定时执行;
    2) 立刻执行。
    9.3.1 使用SUBMIT 将作业提交给作业队列
    PROCEDURE SUBMIT(
    job_name OUT BINARY_INTEGER,
    job_to_submit IN VARCHAR2,
    next_run IN DATE DEFAULT SYSDATE,
    interval IN VARCAHR2 DEFAULT NULL,
    job_parsing IN BOOLEAN DEFAULT FALSE,
    instance IN BINARY_INTEGER DEFAULT ANY_INSTANCE,
    force IN BOOLEAN DEFAULT FALSE);
  • 相关阅读:
    前端生成二维码插件jquery.qrcode.min.js
    Spring的PropertyPlaceholderConfigurer
    Mysql5.7.20安装随笔
    Tomcat配置虚拟目录(目录+文件)
    js中的特殊类型
    使用 adb 命令一次性为多个设备安装 apk
    高通工具使用指导书
    QXDM及QCAT软件使用入门指南V1.0
    CTS测试笔记
    Android adb shell启动应用程序的方法
  • 原文地址:https://www.cnblogs.com/Mayvar/p/wanghonghua_201108021114.html
Copyright © 2011-2022 走看看