ITPub博客

首页 > 数据库 > Oracle > ORA-00001,ORA-00604

ORA-00001,ORA-00604

原创 Oracle 作者:310zhang 时间:2020-07-02 14:16:44 0 删除 编辑


On : 12.1.0.2 version, RDBMS
alert log shows:
ORA-00604: error occurred at recursive SQL level 1
ORA-00001: unique constraint (SYS.SMON_SCN_TIME_TIM_IDX) violated


分析:

需要分析表smon_scn_time。验证表和索引的结构和一致性,如果它们之间存在不一致。需要重新创建索引。

 

For 11.2.0.3 ,11.2.0.2 databases, it could be caused by Bug 13251192 - SMON reports ORA-604/ORA-1 on SYS.SMON_SCN_TIME_TIM_IDX which is fixed in 12.1.0.1 and 11.2.0.4.

解决办法:

For database 11.2.0.4 OR 12c, perform the analyze command below:
ANALYZE TABLE smon_scn_time VALIDATE STRUCTURE CASCADE ONLINE;
1、先得到表 SMON_SCN_TIME上的INDEX的创建语句)
set pages 0
set long 2000000000
select dbms_metadata.get_ddl('INDEX','SMON_SCN_TIME_SCN_IDX','SYS') from dual;

select dbms_metadata.get_ddl('INDEX','SMON_SCN_TIME_TIM_IDX','SYS') from dual;


2、然后 在系统级别设置12500事件阻止SMON更新SMON_SCN_TIME表

alter system set events '12500 trace name context level 10';


3、drop索引
drop index SYS.SMON_SCN_TIME_SCN_IDX;

drop index SYS.SMON_SCN_TIME_TIM_IDX;



4、通过步骤1得到的ddl,创建索引 SYS.SMON_SCN_TIME_SCN_IDX;和 SYS.SMON_SCN_TIME_TIM_IDX;


5、将事件12500关闭,这样 SMON就能更新SMON_SCN_TIME表
alter system set events '12500 trace name context off';


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69902490/viewspace-2701975/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-12-12

  • 博文量
    6
  • 访问量
    4459