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博客 ” ,链接:https://blog.itpub.net/69902490/viewspace-2701975/
,如需转载,请注明出处,否则将追究法律责任。