Oracle 作业学习总结
dbms_job与 dbms_scheduler 用于安排和管理作业队列,通过使用作业,可以使ORACLE数据库定期执行特定的任务。
一. dbms_job
1.1. 创建
variable jobno number;
begin
dbms_job.submit(:jobno,'proce_t;', sysdate, 'sysdate+1/24/60');
commit;
end;
1.2. 参数
Job 输出变量,是此任务在任务队列中的编号。
what 执行的任务的名称及其输入参数。
next_date 何时运行这个工作。写Job的时候可以不指定该值。
interval 任务执行的时间间隔。
每天运行一次
'SYSDATE + 1'
每小时运行一次
'SYSDATE + 1/24'
每10分钟运行一次
'SYSDATE + 10/(6024)
每30秒运行一次
'SYSDATE + 30/(6024*60)'
每隔一星期运行一次
'SYSDATE + 7'
1.3. 管理
查看用户job
select * from user_jobs;
删除job
exec dbms_job.remove(jobno);
修改下次执行时间
exec dbms_job.next_date(jobno, next_date);
修改间隔时间
exec dbms_job.interval(jobno, interval);
启动job
exec dbms_job.run(jobno);
停止job
exec dbms.broken(jobno, true, nextdate);
查看进程数
show parameter job_queue_processes;
必须大于0,否则执行下面的命令修改:
alter system set job_queue_processes=10;
二. dbms_scheduler
在Oracle 10g之前,我们通过DBMS_JOB来管理定时任务;而10g之后,则推荐使用DBMS_SCHEDULER来管理定时任务,因为它提供了更强大的功能和灵活的机制。
2.1. 创建
begin
dbms_scheduler.create_job (
job_name => 'test',
job_type => 'STORED_PROCEDURE',
job_action => 'proce_t',
start_date => sysdate,
repeat_interval => 'FREQ=MINUTELY;INTERVAL=1',
enabled => true
);
end;
2.2. 参数
job_name: 必选, 任务名称
job_type : 必选, 任务类型
PLSQL_BLOCK, -- 执行一个PL/SQL匿名快
STORED_PROCEDURE, -- 执行一个存储过程
EXECUTABLE, -- 执行一个外部程序
CHAIN -- 执行一个CHAIN
job_action : 必选, 任务内容, 与job_type配合使用
start_date : 可选, 首次执行时间, 为空时表示立即执行
repeat_interval: 可选, 执行频率, 为空时表示只执行一次
FREQ=MINUTELY; -- 表示间隔单位, 可选值有YEARLY, MONTHLY, WEEKLY, DAILY, HOURLY, MINUTELY, SECONDLY
INTERVAL=1 -- 表示间隔周期
enabled : 可选, 是否启用任务
2.3. 管理
查看用户scheduler_job
select * from user_scheduler_jobs;
删除scheduler_job
exec dbms_scheduler.drop_job(job_name => 'CLEANQUEUE');
查看JOB运行日志
select log_id, log_date, status from user_scheduler_job_run_details where job_name='TEST_JOB1';
调度作业
exec dbms_scheduler.run_job('test');
停止作业
exec dbms_scheduler.stop_job('test');
Oracle 作业学习总结相关推荐
- oracle菜鸟学习之 分析函数-排序
oracle菜鸟学习之 分析函数-排序 排序函数 1.row_number:返回连续的排序,无论值是否相等 2.rank:具有相等值得行排序相同,序数值随后跳跃 3.dense_rank:具有相等值得 ...
- oracle入门学习(3) 所用的学习环境介绍与设置
oracle入门学习(3) 原文见我的QQ空间:http://user.qzone.qq.com/284648964?ptlang=2052 由于原文是写在我的QQ空间,文章转过来的过程中造图片丢失, ...
- oracle buffer block,8 Oracle深度学习笔记——BUFFER CACHE深入一
8.Oracle深度学习笔记--BUFFER CACHE深入一 最近项目一直和ORACLE死磕,感觉总是找不到出口,只能多看书少说话了. 先记录多少是多少吧! BUFFER CACHE在ORACLE的 ...
- oracle数据库的model,Oracle 11g学习笔记–model子句
Oracle 11g学习笔记–model子句 oracle 10g中新增的model子句可以用来进行行间计算.model子句允许像访问数组中元素那样访问记录中的某个列,这就提供了诸如电子表格计算之类的 ...
- oracle调度不见了,Oracle作业job 没有自动调度起来
Oracle作业job没有自动调度起来 问题:有一同事报过来,说有两个job已经近一周没有自动调起了,让我帮忙解决. 1.检查: (1)在生产库中检查,其他的job都能自动调度 (2)select*f ...
- oracle权限培训,Java培训-ORACLE数据库学习【2】用户权限
查询用户拥有的权限: 1.查看所有用户:select *from dba_users;select *from all_users;select *from user_users; 2.查看用户或角色 ...
- oracle分区表学习及应用
oracle分区表学习及应用 -- Create table(创建分区表) create table BILL_MONTHFEE_ZERO ( SERV_ID NUMBER ...
- Oracle RMAN 学习
Oracle RMAN 学习:三思笔记 1 进入rman Rman--物理备份(结构/数据) 1 本地db Cmd set oracle_sid=orcl 1 rman target / Rman&g ...
- oracle菜鸟学习之 复杂的更新语句使用
oracle菜鸟学习之 复杂的更新语句使用 实例与答案 问题:表T1里有a,b,c...N个字段,表T2里有a,b,c三个字段,然后想在T1中"c"与表T2中"c&quo ...
最新文章
- Python培训基础教程都教哪些
- 【Robot学院】一文读懂世界智能制造大趋势!
- 20145129 《Java程序设计》第6周学习总结
- 各种编码范围总结以及linux下面的编码批量转化
- mysql主从双向同步复制
- AWS elastic load balancer里的监听器certificate设置
- 前端学习(1338):mongoDB删除文档
- win10 linux安卓模拟器,genymotion安卓模拟器在Window10中使用的问题
- 导出excel/xml
- antares harmony engine安装_PS CC2017安装教程
- C++ 知识整理 函数
- Sublime Text : 创建工程
- 计算机自带仿真软件,crt软件(电脑终端仿真工具)V8.5.4 最新版
- 智能车学习(十四)——K60单片机GPIO学习
- Actors编程模型
- Consistent 与 Mirrored 视角
- 使用adb的时候出现 adb不是内部或者外部命令如何解决
- 服务器开启防火墙后无法登录系统,客户端连不上,服务器防火墙服务启动不了...
- Mbus新增主动报警功能,简单问题的波折路程。
- 这3个思路,将彻底解决90%第三方支付公司所面临的合规建设困惑!
热门文章
- NS安装问题收集(2)
- java调用网络打印机不稳定_新手处理共享打印机总是没有反应的故障
- 安全管家安卓_pc-cillin和腾讯电脑管家比较哪个更好
- Hystrix 熔断器02 —— hystrix 案例之构建
- java的知识点12——==和equals方法、 super关键字、 继承树追溯、封装的作用和含义、封装的实现—使用访问控制符、封装的使用细节
- JAVA不借助第三个变量实现两个变量交换的思考
- sdut 3363 驴友计划
- 遗传算法的收敛性分析
- Python 字符串操作方法大全
- Normal Bayes 分类器过程详解