Oracle作业队列入门图文解说
来源:互联网 发布:觉得自己很失败 知乎 编辑:程序博客网 时间:2024/04/27 18:50
在 Oracle 中,是使用 “作业队列协调进程(CJQ0)” 这个协调数据库实例的作业队列的后台进程,来监视作业队列中的作业表(JOB$),并启动作业队列进程(Jnnn)。而当需要执行作业的时候,作业队列Jnnn 将会执行由 DBMS_JOBS 包创建的作业请求。
1 首先查看一下作业相关的信息;
当前没有作业,select * from user_jobs显示为空;
2 在sql developer中创建一个存储过程,用于插入一条数据到emp表;
create or replace procedure insert_emp as
begin
insert into emp(empno,ename) values('8000','Simth');
end insert_emp;
3 在sql plus中,连接到scott用户,查看一下存储过程; 新建的存储过程insert_emp已经出来了;
4 根据网上资料,用系统包dbms_job的submit来提交一个作业,调度执行insert_emp;
输入错误一次;
5 再次输入,争取;
job1为作业编号;insert_emp是要执行的过程名;
按网上资料,sysdate+1/1440 为每分钟执行一次,那么sysdate+2/1440为每2分钟执行一次;
函数包DBMS_JOB介绍
该包包含的过程有SUBMIT、REMOVE、CHANGE、WHAT、NEXT_DATE、INTERVAL、BROKEN、RUN
参数介绍
job是作业号,标识一个作业在数据库中具有唯一性质
broken表示该作业是否被标记为无效,true无效,false有效
next_date表示下一次执行该作业的时间,默认为当前日期和时间
what表示该作业要运行的一块PL/SQL代码块、存储过程
interval表示该作业重复执行的时间间隔
no_parse表示作业在提交或者执行时是否应进行语法分析,true不分析,false立即分析
my_call表示在当前状态下重新提交此作业的代码
过程介绍:
SUBMIT:正常提交一个作业,有五个参数:job、what、next_date、interval、no_parse
REMOVE:删除一个已计划运行的作业,有一个参数:job、what、next_date、interval、no_parse
CHANGE:用于改变作业的执行计划,有四个参数:job、what、next_date、interval
WHAT:重新设置作业的执行代码,有两个参数:job、what
NEXT_DATE:用于设置作用下一次被执行的时间,有两个参数:job、next_date
INTERVAL:用于设置作用下一次执行的时间间隔,有两个参数:job、interval
BROKEN:用于设置一个已提交的左右有效或无效,有三个参数:job、broken、next_date
RUN:强制执行一个作业,不管该作业是否有效,有一个参数:job
USER_EXPORT:返回一个命令,此命令用来安排一个存在的作业以便此作业重新提交,有两个参数:job、my_call
6 现在作业提交了,查看一下user_jobs表的情况,有东西了;23是系统分配的作业号;
7 执行该作业;
8 过一会看emp表;果然加入了一条数据;如下图第一条;
9 但是过一段时间再看emp表,并没有2分钟插入一条记录;为啥呢;
看一下user_jobs表的情况,如下图,执行失败次数16,broken为y - 即停止;
那么是因为每次插入相同的数据,数据库约束的原因,除了第一次,其他插入失败,达到16次Oracle就停止了该作业;
移除该作业,退出,休息去。
- Oracle作业队列入门图文解说
- Python入门图文解说
- 图文解说oracle视图
- oracle作业队列
- win7系统图文解说如何安装oracle数据库
- oracle job queue/oracle 作业队列
- oracle job queue/oracle 作业队列
- 图文解说redmine使用指南
- 图文解说redmine使用指南
- 图文解说:什么是数字签名
- 图文解说OpenCV开发一 - 环境配置和入门程序详解
- Win7(64位)下安装Oracle 11g (图文解说版)
- plsql无法连接64位oracle数据库的解决方法(图文解说)
- plsql无法连接64位oracle数据库的解决方法(图文解说)
- plsql无法连接64位oracle数据库的解决方法(图文解说)
- plsql无法连接64位oracle数据库的解决方法(图文解说)
- 开关电源测试步骤(图文解说)
- STM32新建工程图文解说
- 027:集合:在我的世界里,你就是唯一!
- LeetCode Length of Last Word 字符串
- NYOJ 448 寻找最大数 解题报告
- MySQL索引的创建、删除和查看
- 【ThinkingInJava】1、几个练习题
- Oracle作业队列入门图文解说
- Carthage 去中心化的Cocoa依赖管理器
- HDU 5201 The Monkey King(容斥)
- 男子独居洛阳死于家中9年才被发现 已成枯骨
- ios_label ios7自动换行
- 固定资产报废BAPI
- CGPath 圆角矩形
- 数组 Plus One
- notification 简单应用