Oracle数据库中如何根据时间来执行JOB

2016-02-19 16:46 11 1 收藏

get新技能是需要付出行动的,即使看得再多也还是要动手试一试。今天图老师小编跟大家分享的是Oracle数据库中如何根据时间来执行JOB,一起来学习了解下吧!

【 tulaoshi.com - 编程语言 】

  问题:假设有一个存储过程p_test,如何才能每20分钟执行一次?

  解答:

  1、把init.ora中如下两个参数打开

JOB_QUEUE_INTERVAL=60
JOB_QUEUE_PROCESSES=4
job_queue_keep_connections=true

  然后重启一个库,如果原来已经打开了则不用这步了

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  2、示例,以下由sqlplus 来执行,具体参照一下相关的文档

VARIABLE jobno number;
BEGIN
DBMS_JOB.SUBMIT(:jobno,
’p_test;’
SYSDATE,’SYSDATE + 1/72’);
commit;
END;
DBMS_JOB.SUBMIT(:jobno,//job号
’your_procedure;’,//要执行的过程
trunc(sysdate)+1/24,//下次执行时间
’trunc(sysdate)+1/24+1’//每次间隔时间
);

  删除job:dbms_job.remove(jobno);

  修改job:dbms_job.what(jobno,what);

  修改下次执行时间:dbms_job.next_date(job,next_date);

  修改间隔时间:dbms_job.interval(job,interval);

  停止job:dbms.broken(job,broken,nextdate);

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  启动job:dbms_job.run(jobno);

  例子:

VARIABLE jobno number;
begin
DBMS_JOB.SUBMIT(:jobno,
’Procdemo;’,
SYSDATE, ’SYSDATE + 1/720’);
commit;
end;

来源:http://www.tulaoshi.com/n/20160219/1613030.html

延伸阅读
      每个数据库管理员都会面临数据导入的问题,这有可能发生在数据库的新老移植过程中,或者是在数据库崩溃后的恢复重建过程中,还有可能是在创建测试数据库的模拟环境过程中,总之作为一名合格的数据库管理员,你应该做好接受各种数据导入请求的技术储备,同时还要尽量满足人本能的对导入速度的苛求。本文仅针对 O...
在Internet上运作数据库经常会有这样的需求:把遍布全国各城市相似的数据库应用统一起来,一个节点的数据改变不仅体现在本地,还反映到远端。复制技术给用户提供了一种快速访问共享数据的办法。 一、实现数据库复制的前提条件 1、数据库支持高级复制功能 您可以用system身份登录数据库,查看v$option视图,如果其中Advanced...
/* * 创建日期 2005-9-27 * * TODO 要更改此生成的文件的模板,请转至 * 窗口 - 首选项 - Java - 代码样式 - 代码模板 */ package person.fane.test; import java.sql.*; /** * A JDBC test application for Oracle * @author Fane * @version 1.0.0 * @since JDK1.4 */ ...
这里会讨论令Oracle停机时间最小化的步骤。各种形式的停机--计划的或者是非计划的--总是不断地发生,一个DBA应该有正确的备份策略,这样在数据库出现问题时就可以更快地恢复。 以下是假定的备份策略和数据库的运作条件 控制文件是镜像的 数据库运行在archivelog模式 每个星期都进行冷备份 每日都进行热...
一、用户角色的管理与口令保密 这是保护数据库系统安全的重要手段之一。它通过建立不同的用户组和用户口令验证,可以有效地防止非法的Oracle用户进入数据库系统,造成不必要的麻烦和损坏;另外在Oracle数据库中,可以通过授权来对Oracle用户的操作进行限制,即允许一些用户可以对Oracle服务器进行访问,也就是说对整个数据库具有读写...

经验教程

500

收藏

45
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部