怎么解决使用数据库出现的ORA-00001、ORA-00604问题
本篇內容介紹了“怎么解決使用數據庫出現的ORA-00001、ORA-00604問題”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
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';
總結
以上是生活随笔為你收集整理的怎么解决使用数据库出现的ORA-00001、ORA-00604问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 没有内存条电脑能开机吗_电脑没内存条能开
- 下一篇: mfc如何将一个数组中的字节数据用串口发