当前位置: 首页 > news >正文

专业购物网站建设多少钱市场营销经典案例

专业购物网站建设多少钱,市场营销经典案例,做网站公司广州,web浏览器阻止activex控件怎么办Oracle DBMS_SCHEDULER 与 DBMS_JOB 的对比 一 基本概述对比 特性DBMS_JOB (旧版)DBMS_SCHEDULER (新版)引入版本Oracle 7 (1992年)Oracle 10g R1 (2003年)当前状态已过时但仍支持推荐使用的标准设计目的基础作业调度企业级作业调度系统 二 功能特性对比 2.1 作业定义能力 …

Oracle DBMS_SCHEDULER 与 DBMS_JOB 的对比

一 基本概述对比

特性DBMS_JOB (旧版)DBMS_SCHEDULER (新版)
引入版本Oracle 7 (1992年)Oracle 10g R1 (2003年)
当前状态已过时但仍支持推荐使用的标准
设计目的基础作业调度企业级作业调度系统

二 功能特性对比

2.1 作业定义能力

  • DBMS_JOB:

    • 仅支持PL/SQL代码片段
    • 无正式作业名称,只有数字ID
    BEGINDBMS_JOB.SUBMIT(job => :jobno,what => 'BEGIN my_proc; END;',next_date => SYSDATE,interval => 'SYSDATE+1');
    END;
    
  • DBMS_SCHEDULER:

    • 支持命名作业
    • 可执行PL/SQL块、存储过程、外部程序等
    • 支持作业链、作业类等高级概念
    BEGINDBMS_SCHEDULER.CREATE_JOB(job_name => 'MY_JOB',job_type => 'PLSQL_BLOCK',job_action => 'BEGIN my_proc; END;',start_date => SYSDATE,repeat_interval => 'FREQ=DAILY',enabled => TRUE);
    END;
    

2.2 调度灵活性

  • DBMS_JOB:

    • 简单日期表达式
    • 仅支持基于日期的间隔
    interval => 'SYSDATE+1/24' -- 每小时执行
    
  • DBMS_SCHEDULER:

    • 使用日历表达式
    • 支持复杂调度规则
    repeat_interval => 'FREQ=HOURLY; BYMINUTE=0,15,30,45'
    

2.3 资源管理

  • DBMS_JOB:

    • 无内置资源控制
    • 无法限制作业资源使用
  • DBMS_SCHEDULER:

    • 支持作业优先级
    • 可分配资源计划
    • 可限制CPU使用等
    DBMS_SCHEDULER.SET_ATTRIBUTE('MY_JOB','max_run_duration',INTERVAL '30' MINUTE
    );
    

三 管理维护对比

3.1 监控能力

  • DBMS_JOB:

    • 有限的视图(DBA_JOBS, DBA_JOBS_RUNNING)
    • 无历史执行记录
  • DBMS_SCHEDULER:

    • 丰富的视图(DBA_SCHEDULER_JOBS等)
    • 完整的执行历史记录
    SELECT * FROM DBA_SCHEDULER_JOB_RUN_DETAILS
    WHERE job_name = 'MY_JOB';
    

3.2 错误处理

  • DBMS_JOB:

    • 简单重试机制
    • 失败16次后自动标记为broken
  • DBMS_SCHEDULER:

    • 可配置重试策略
    • 支持失败通知
    • 可定义失败后的处理程序
    DBMS_SCHEDULER.SET_ATTRIBUTE('MY_JOB','max_failures',5
    );
    

四 性能与扩展性对比

维度DBMS_JOBDBMS_SCHEDULER
并发作业数有限(依赖JOB_QUEUE_PROCESSES)更高性能,更好的扩展性
依赖管理无内置支持支持作业依赖和作业链
多租户支持不明确12c+完整支持PDB/CDB

五 实际应用建议

  1. 新项目开发:一律使用DBMS_SCHEDULER

  2. 旧系统维护

    • 简单作业可保持使用DBMS_JOB
    • 复杂需求应迁移到DBMS_SCHEDULER
  3. 迁移路径

    -- 使用DBMS_SCHEDULER.CREATE_JOB创建新作业
    -- 使用DBMS_JOB.REMOVE逐步淘汰旧作业
    
  4. 混合环境注意事项

    • 两种系统独立运行
    • 共享JOB_QUEUE_PROCESSES参数
    • 监控时需同时检查两种作业

六 典型场景选择指南

  1. 适合DBMS_JOB的场景

    • 简单的定时PL/SQL执行
    • 需要向后兼容的旧系统
    • 轻量级调度需求
  2. 必须使用DBMS_SCHEDULER的场景

    • 需要复杂调度规则
    • 需要执行操作系统命令或程序
    • 需要作业依赖和资源控制
    • 需要详细的作业历史记录
    • 在多租户环境中使用

七 版本兼容性说明

  1. Oracle 10g-11g

    • 两种系统共存
    • 建议开始迁移到DBMS_SCHEDULER
  2. Oracle 12c+

    • DBMS_JOB仍然可用但不推荐
    • DBMS_SCHEDULER功能更丰富
  3. Oracle 19c/21c

    • DBMS_JOB保持兼容性
    • 新功能只加入DBMS_SCHEDULER

更详细的内容请查看官方文档:

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/arpls/DBMS_JOB.html#GUID-8C62D808-D7A3-4D21-B87F-A229B7CE1956

谨记:心存敬畏,行有所止。

http://www.lryc.cn/news/616428.html

相关文章:

  • 江苏宿迁最新疫情百度seo怎么提高排名
  • 服务器租用收费seo排名哪家公司好
  • 山西建设投资集团有限公司优化营商环境条例
  • 安宁网站建设 熊掌网站cms
  • 怎么做卖卷网站网络推广需要花多少钱
  • 泉州网站建设公司什么是淘宝搜索关键词
  • wordpress自定义htmlseo搜索优化专员招聘
  • NY155NY170美光固态闪存NY175NY184
  • Java进阶之单列集合Set接口下的通用方法
  • 安全运维的核心
  • windows运维
  • 消息队列系统测试报告
  • [ JDBC ] java 数据库连接
  • 应对高并发 - TCP/IP网络栈核心参数调优
  • (三)全栈(部署)
  • 滚动条开始滚动时,左侧导航固定,当左侧内容触底到footer时左侧内容取消固定并跟随滚动条滚动
  • Vue3入门到精通:2.4 Vue3动态组件与异步组件深度解析
  • 【Redis】持久化方案——RDB和AOF
  • RK3588在YOLO12(seg/pose/obb)推理任务中的加速方法
  • Kafka消费者相关原理
  • 纳维 - 斯托克斯方程的存在性与光滑性:流体世界的千年谜题
  • Python训练营打卡DAY 26 函数专题1:函数定义与参数
  • 大模型工具集成四层架构:识别、协议、执行与实现
  • JS中typeof与instanceof的区别
  • 专题三_二分_二分查找
  • 单片机捷径
  • Shell脚本-了解i++和++i
  • Linux常用命令(后端开发版)
  • NVIDIA Jetson AGX Orin 全景解析——边缘计算的高性能选择
  • 6A 工作流:让 Cursor、Trae 等AI编程助手按流程交付的实战手册