加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

oracle错误ORA-00001

(2012-05-02 09:51:38)
标签:

杂谈

分类: oracle
ALERT错误:
ORA-12012: error on auto execute of job 8952
ORA-00001: unique constraint (ORA-00001: unique constraint (SYS.I_STATS_TARGET2) violated
ORA-06512: at "SYS.DBMS_STATS_INTERNAL", line 1368
ORA-06512: at "SYS.DBMS_STATS", line 19278
.) violated

trace信息:
*** ACTION NAME:(GATHER_STATS_JOB) 2012-04-30 22:00:18.397
*** MODULE NAME:(DBMS_SCHEDULER) 2012-04-30 22:00:18.397
*** SERVICE NAME:(SYS$USERS) 2012-04-30 22:00:18.397

Oracle Support解释的原因:
This issue is caused by unpublished bug 5636249: ORA-00001: UNIQUE CONSTRAINT (SYS.I_MON_MODS_ALL$_OBJ) VIOLATED
Oracle Server - Enterprise Edition - Version: 10.2.0.4 to 10.2.0.4 - Release: 10.2 to 10.2
Information in this document applies to any platform.

解决方法:
This issue is fixed in 11.1, and no fix is available for any platform.
So upgrade database to 11.1 which would fix the issue.

替代方法:
run the job again.

这个错误是并发进程收集统计信息产生的唯一性冲突,属于BUG,不过是偶发性错误,如果不能升级系统忽略错误即可。因为oracle会在维护时间窗口内自动重复执行该job,直到成功为止。
SQL> select job_name,run_count,failure_count,(run_count-failure_count)*100/run_count from dba_scheduler_jobs where job_name ='GATHER_STATS_JOB';
JOB_NAME          RUN_COUNT   FAILURE_COUNT   (RUN_COUNT-FAILURE_COUNT)*100/RUN_COUNT
GATHER_STATS_JOB  507       163       67.8
这是一个偶发性错误,成功率67.8%。但并非所有系统都会报这个BUG,所以肯定跟表定义有关系,可以进一步研究具体什么原因触发这个BUG,怎么避免这个错误。


【参见】[ID 1448200.1]

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有