2011年11月17日星期四

job執行時間 - janeting的个人空间 - ITPUB个人空间 - powered by X-Space

http://space.itpub.net/13023909/viewspace-625640
如果oracle JOB的interval直接用sysdate指定,如: sysdate + 5/1440,oracle自動生成的下一次的執行時間,會有幾秒的延遲.下面是一個測試:

1.創建表test_job_a,用於記錄JOB開始執行時間和結束時間

SQL> create table test_job_a (

2 start_date date,

3 end_date date );

2.創建JOB,JOB的首次執行時間指定在11:20:00,interval為5 mins

SQL> variable x number;

SQL> begin

2 dbms_job.submit ( job => :x,

3 what =>'declare

4 start_date date :=sysdate;

5 begin

6 for i in 1 .. 10 loop

7 dbms_lock.sleep(12);

8 end loop;

9 insert into test_job_a values (start_date, sysdate);

10 commit;

11 end;',

12 next_date => to_date('2010-01-16 11:20:00', 'yyyy-mm-dd hh24:mi:ss'),

13 interval => 'sysdate + 5/1440');

14 commit;

15* end;

3.時間查看記錄結果:

SQL> select * from test_job_a order by start_date;



START_DATE END_DATE

------------------------- -------------------------

2010-01-16 11:20:02 2010-01-16 11:22:02

2010-01-16 11:25:07 2010-01-16 11:27:07

2010-01-16 11:30:12 2010-01-16 11:32:12

2010-01-16 11:35:17 2010-01-16 11:37:17

2010-01-16 11:40:22 2010-01-16 11:42:22

2010-01-16 11:45:27 2010-01-16 11:47:27

2010-01-16 11:50:32 2010-01-16 11:52:32

2010-01-16 11:55:37 2010-01-16 11:57:37

4.原因:

(1) JOB的調用有時間延遲.

(2) 根據實際的執行時間來自動計算下一次的執行時間.

如:start_date : 2010-01-16 11:55:37,JOB執行結束後,可以通過查詢user_jobs視圖的next_date列到JOB的下次執行時間: 2010-01-16 12:00:37

SQL> select next_date from user_jobs;



NEXT_DATE

-------------------

2010-01-16 12:00:37

解決方法:

用trunc(sysdate, 'mi') + 5/1440指定時間間隔

把test_job_a表的內容清空,修改上面JOB的interval,再次記錄JOB的執行時間.

記錄結果如下:

SQL> select * from test_job_a order by start_date;



START_DATE END_DATE

------------------------- -------------------------

2010-01-16 14:00:04 2010-01-16 14:02:04

2010-01-16 14:05:04 2010-01-16 14:07:04

2010-01-16 14:10:04 2010-01-16 14:12:04

2010-01-16 14:15:04 2010-01-16 14:17:04

SQL> select next_date from user_jobs;



NEXT_DATE

-------------------

2010-01-16 14:10:00

SQL> /



NEXT_DATE

-------------------

2010-01-16 14:15:00



JOB interval寫法總結:

1day = 24hour= 1440mins

若JOB的執行時間間隔為分鐘:

trunc(sysdate,'mi') + n/1444 (0
如每隔5mins執行一次: trunc(sysdate,'mi') + 5/1440

若JOB的執行時間間隔為小時:

trunc(sysdate, 'hh') + n/24[ + m/1440] (0
如每隔2小時,且執行時間為15mins執行一次: trunc(sysdate, 'hh') + 2/24 + 15/1440

若JOB的執行時間間隔為天:

trunc(sysdate) + n [+ m/24 [+ x/1440]]

如每天的8點15執行: trunc(sysdate) + 1 + 8/24 + 15/1440

其他情況就需要用到日期函數了:

1) 如每月5號的8點執行JOB: trunc(last_day(sysdate)) + 5 + 8/24

2) 如週一到週五的8點執行:

trunc(least(next_day(sysdate,2),

next_day(sysdate,3),

next_day(sysdate,4),

next_day(sysdate,5),

next_day(sysdate,6)

)) + 8/24

在oracle中1:代表周 一,2-7依次代表週二…週六

2011年11月9日星期三

一些数据库监控,优化,管理工具-Oracle数据库管理-ITPUB论坛-it168旗下专业技术社区

一些数据库监控,优化,管理工具-Oracle数据库管理-ITPUB论坛-it168旗下专业技术社区
发表于 2008-9-18 10:41:28 |只看该作者 |倒序浏览
*******************************************************************
这两天网盘连不上了,导致国内用户暂时无法下载。大家下载时需要用代理。这里提供一个
比较容易使用的代理软件,安装后无需配置,双击运行,在打开的浏览器中点连接即可!因此给大家
带来的不便表示抱歉

注意!!2008.11.4 目前国内大多数用户都能可以下载了,不用再安装代理了!未传完的小弟会继
续上传。
*******************************************************************


网速有点慢,还有好几个正在上传...

如有问题可以联系我,一起探讨:afant_info@hotmail.com

并不是有意让大家回复,只是觉得好的工具应该让坛子中更多的人知道并使用,给大家的工作带来些便捷。大多人都是直接下载后就走人了,帖子逐渐掉了下去,回复的人很少。所以才出此下策,希望大家能理解。

DB Audit 专业的数据库审计工具
DB Audit Expert是一款专业的数据库安全评估,审计和提供解决方案的数据库管理系统。DB Audit Expert允许数据库及系统管理员,安全管理员,审计人员和操作人患跟踪和分析数据库的活动,包括对数据库的访问,使用,对象的建立,修改和删除等




下载:

本帖隐藏的内容

[下载]




Spotlight on Oracle 此为最新的5.0.1版本
大名鼎鼎的QUEST公司产品,不用多说了吧。数据库实时的监控诊断工具,其漂亮的界面无人能敌!



下载:

本帖隐藏的内容

[下载]



SharePlex for OracleNT 6.1(2008.12.31最新版) 同时附上《安装向导》与《用户手册》两本文档

搞数据库的同志应该知道吧,介绍随后补上。先把软件贴上。5个包





下载:

本帖隐藏的内容

[part01] [part02] [part03] [part04] [part05] [安装向导] [用户手册]



Spotlight on SQL Server

下载:

本帖隐藏的内容

[下载]




Spotlight on UNIX Spotlight系列之一,可监控unix系统,包括linux等。出于安全考虑quest不允许使用root用户登录,大家用时注意下。

license : 1-47853-30212-46224-95327 www.serials.ws 感谢 alwyn78 提供

下载:

本帖隐藏的内容

[下载]




Toad for Oracle 资料 Toad由于网络问题,一直没有传上来,等有机会在传吧

下载:

本帖隐藏的内容

[下载]



Spotlight on Oracle 中文资料 希望对大家有帮助

下载:

本帖隐藏的内容

[下载]



Toad for Oracle 中文视频资料swf格式*16

下载:

本帖隐藏的内容

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] 所有



Spotlight on EBS 不用说了吧,传了好多次,不容易啊,呵呵

下载:

本帖隐藏的内容

[下载]



Spotlight on RAC 其实就是Spotlight on oracle 的专家版分为12个包

下载:


Toad for Oracle 9.6

下载:

本帖隐藏的内容

[part01] [part02] [part03] [part04] [part05] [part06] [part07] [part08] [part09] [part10]



看到坛中一些朋友对于被空间问题困扰,向大家介绍一款空间管理工具,也是QUEST的产品,叫做space manager with liveReg 最大的亮点是可以实现在线重组。后面会相继传上来。

Navicate for MySQL 8 一款简单适用的MySQL工具,据说现在for Oracle 的也出来了,有机会试试

下载:

本帖隐藏的内容

[下载]



Space Manager With LiveReg 6.5 22parts
Space Manager with LiveReorg是Quest Software面向容量监控、空间回收和重组所提供的强有力的解决方案。它可即时发现数据库磁盘空间不足,并解决与数据库空间变化相关联的性能问题。而且,通过分析磁盘使用趋势、预测磁盘空间需求和突出即时存储需要,Space Manager with LiveReorg有助于组织建立和满足预算的要求。

下载:



DB Tools for Oracle
一款包含了20多种不同的轻量级的数据库诊断及管理程序套装工具。每个数据库管理模块都在统一的控制中心,有公共的特征和设计接口。各模块有独立的功能,有很多实用功能为DBA设计。使用DB Tools进行监控、调整、管理、配置、审计、比较、测试你的ORACLE数据库;调整SQL模式和应用;归档数据,比较和复制数据库,载入和导出多种格式的文件,包括ZIP,LOB和Excel;也可以开发PL/SQL或Java。拥有比OEM更多的功能,更友好的用户界面,像TOAD的对象浏览和SQL编辑一样的风格及功能。

下载:

本帖隐藏的内容

[点击下载]



Navicat for Oracle 操作简单,功能基本可以满足日常管理。有兴趣的朋友可以下载看看

Navicat Oracle是一个强大的Oracle数据库服务器管理和开发工具。它可以与任何9i或以上版本的Oracle一起工作,并支持所有的Oracle对象包括数据字典,表空间,同义词,物化视图,触发器,队列,类型等。它不仅对专业开发人员来说是非常尖端的技术,而且对于新手来说也易学易用。其精心设计的图形用户界面(GUI)以及良好的描述向导系统,Navicat Oracle可以让你用一种安全简便的方式快速并容易地创建,组织,访问和共享信息。

下载:

本帖隐藏的内容

[Navicat for Oracle]



Jtest 自动实现JAVA的单元测试和代码标准校验

迅速可靠地修改已有代码
控制开发成本和进度
优化开发资源
迅速掌握前沿技术带来优势的同时控制相应的风险
对于Java代码质量和可读性具备直观可视化效果

下载:7/11parts(当前)
[part01] [part02] [part03] [part04] [part05] [part06] [part07] [part08] [part09] [part10]

[ 本帖最后由 afant 于 2009-2-9 17:56 编辑 ]
www.afant.net