分享更有价值
被信任是一种快乐

oracle中出现ORA-12005错误怎么办

文章页正文上

这篇文章给大家分享的是有关oracle中出现ORA-12005错误怎么办的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
Oracle Job ORA-12005 错误的解决
—–发现两个数据库每天晚上23:00分都有警告日志的报错信息:
ORACLE_HOME = /oracle/oracle/product/10.2.0/db_2
System name: HP-UX
Node name: crm2db1
Release: B.11.31
Version: U
Machine: ia64
Instance name: tjcrm2
Redo thread mounted by this instance: 1
Oracle process number: 5104
Unix process pid: 16600, image: oracle@crm2db1 (J002)
*** SERVICE NAME:(SYS$USERS) 2013-09-21 23:00:01.532
*** SESSION ID:(4803.7857) 2013-09-21 23:00:01.532
*** 2013-09-21 23:00:01.532
ORA-12012: 自动执行作业 2289 出错
ORA-12005: 不能安排过去时间的自动刷新
——查看相关的job
select job,log_user,schema_user,what,LAST_DATE,LAST_SEC,THIS_DATE,THIS_SEC,NEXT_DATE,NEXT_SEC,INTERVAL from dba_jobs where job=2289;
JOBLOG_USER SCHEMA_USER WHAT LAST_DATE LAST_SEC THIS_DATE THIS_S免费主机域名EC NEXT_DATE NEXT_SEC INTERVAL
———- ——— ————– ——————– ———— —————- ———— —————- ———— —————- ——————————
2289INST INST begin 22-SEP-13 00:02:12 22-SEP-13 23:00:00 TRUNC(SYSDATE + 1) – 1/24
DELETE_KEY_INFO;
end;
发现interval是TRUNC(SYSDATE + 1) – 1/24。在视图all_jobs中,以下免费主机域名列的含义为:
(a)LAST_DATE:Date on which this job last successfully executed——job成功执行的完毕时间
(b)LAST_SEC:Same as LAST_DATE. This is when the last successful execution started.--上次成功执行的开始时间 ~
(c)THIS_DATE:Date that this job started executing (usually null if not executing)——没有job在执行的时候,该字段为空。若有job正在运行,这个时间是job的开始执行时间。
(d)THIS_SEC:Same as THIS_DATE. This is when the last successful execution started.
(e)NEXT_DATE:Date that this job will next be executed——job下次执行时间。
(f)NEXT_SEC:Same as NEXT_DATE. This is when the last successful execution started。
(g)INTERVAL:A date function, evaluated at the start of execution, becomes next NEXT_DATE
——原因分析:
job执行的时候是21-SEP-13 23:00:00 因此计划出下一次的执行时间为trunc(21-SEP-13 23:00:00 +1) -1/24=还是等于21-SEP-13 23:00:00但执行job后时间已经是22-SEP-13 00:02:12 ,这时数据库
发现下一次执行的时间小于现在的时间。所以报错。但是job已经执行成功。
——解决方案:
修改INTERVAL使下一次执行的时候大于当前执行后的时间。
EXEC dbms_ijob.interval(job,interval)
exec dbms_ijob.interval(2289,’TRUNC(SYSDATE + 1)+ 23/24’); =====>在sys用户下执行其它用户下的job时,用dbms_ijob
commit;
exec dbms_ijob.next_date(2289,to_date(‘2013-09-23 23:00:00′,’yyyy-mm-dd hh34:mi:ss’));
commit; 感谢各位的阅读!关于“oracle中出现ORA-12005错误怎么办”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

相关推荐: 一台AppManager服务器断电后启动Mysql报错怎么办

小编给大家分享一下一台AppManager服务器断电后启动Mysql报错怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收免费主机域名获,下面让我们一起去了解一下吧!一台AppManager服务器断电后,启动My…

文章页内容下
赞(0) 打赏
版权声明:本站采用知识共享、学习交流,不允许用于商业用途;文章由发布者自行承担一切责任,与本站无关。
文章页正文下
文章页评论上

云服务器、web空间可免费试用

宝塔面板主机、支持php,mysql等,SSL部署;安全高速企业专供99.999%稳定,另有高防主机、不限制内容等类型,具体可咨询QQ:360163164,Tel同微信:18905205712

主机选购导航云服务器试用

登录

找回密码

注册