ora00600错误问题的解决文档格式.docx
《ora00600错误问题的解决文档格式.docx》由会员分享,可在线阅读,更多相关《ora00600错误问题的解决文档格式.docx(7页珍藏版)》请在冰豆网上搜索。
log3thread1sequence1865MonAug1808:
19:
032008Thread1advancedtologsequence1867
Currentlog#1seq#1867mem#0:
E:
\ORACLE\ORADATA\YXERP\MonAug1808:
032008
Currentlog#1seq#1867mem#1:
F:
\ORACLE\DATA\MonAug1808:
042008ARC0:
log2thread1sequence1866MonAug1808:
Beginningtoarchivelog2thread1sequence1866CreatingarchivedestinationLOG_ARCHIVE_DEST_1:
MonAug1808:
062008Thread1advancedtologsequence1868
Currentlog#5seq#1868mem#0:
\ORACLE\ORADATA\YXERP\05A
Currentlog#5seq#1868mem#1:
062008ARC1:
log2thread1sequence1866ARC1:
Unabletoarchivelog2thread1sequence1866
LogactivelybeingarchivedbyanotherprocessARC1:
log1thread1sequence1867ARC1:
Beginningtoarchivelog1thread1sequence1867CreatingarchivedestinationLOG_ARCHIVE_DEST_1:
ARC1:
LogactivelybeingarchivedbyanotherprocessMonAug1808:
072008ARC0:
log2thread1sequence1866MonAug1809:
09:
572008Errorsinfilee:
\oracle\admin\yxerp\udump\:
ORA-00600:
内部错误代码,参数:
[12700],[36900],[],[8],[],[25],[],[]MonAug1809:
28:
562008Errorsinfilee:
[12700],[36900],[],[8],[],[25],[],[]
看到ora-00600错误,我仍是比较担忧的,随后就和论坛里的兄弟们沟通
二、解决步骤第一步---定为错误:
查看trace文件,找到执行这次错误问题ORA-00600:
[12700],[36900],[],[8],[],[25],[],[],
缘故:
sql>
SELECTconsult_code,data_type,disp_sequence,disp_type,disp_value,dr,field_code,field_name,id,if_autocheck,if_datapower,if_default,if_desc,if_group,if_immobility,if_must,if_order,if_sum,if_used,max_length,opera_code,opera_name,order_sequence,pk_corp,pk_templet,return_type,table_code,table_name,ts,userdefflag,value,resid,isConditionFROMpub_query_conditionWHEREpk_templet='
1004AAJ6P'
andpk_corpin('
@@@@'
'
0001'
1004'
)orderbydisp_sequence,order_sequence
通过metlink里的文档,发觉12700是索引出问题了,有依照上述执行情形保留,核实一下是不是pub_query_condition出问题了?
Sql>
analyzetableobj$validatestructurecascade;
Tableanalyzed
analyzetablePUB_QUERY_CONDITIONvalidatestructure;
你能够先如此确认,不加CASCADE
再次查看trace文件,
analyzetablepub_query_conditionvalidatestructurecascade
analyzetablePUB_QUERY_CONDITIONvalidatestructurecascadeORA-01499:
表/索引交叉引用失败-请参阅跟踪文件
第一参阅跟踪文件,再查看表的索引:
SQL>
selecttablespace_name,segment_type,owner,segment_name
2
fromdba_extentswherefile_id=11and116626betweenblock_idandblock_id+blocks-1;
TABLESPACE_NAME
SEGMENT_TYPE
OWNER
SEGMENT_NAME--------------------------------------------------------------------------------------------------------------------------------------------------------------NNC_DATA01
TABLE
YXERP1
PUB_QUERY_CONDITION
Trace文件里的(file#14,block#47845)thru(file#14,block#47845)
fromdba_extentswherefile_id=14and47845betweenblock_idandblock_id+blocks-1;
CannotexecutecommandsnowTABLESPACE_NAME
SEGMENT_NAME--------------------------------------------------------------------------------------------------------------------------------------------------------------NNC_INDEX01
INDEX
I_PUB_QUERY_CONDIT
第二步----查验表空间看是不是在有坏快?
C:
\DocumentsandSettings\Administrator>
dbvfile='
E:
\oracle\oradata\yxerp\'
blocksize=8192DBVERIFY:
Release.-Productionon礼拜一8月1818:
32:
012020Copyright(c)1982,2002,OracleCorporation.
Allrightsreserved.DBVERIFY-验证正在开始:
FILE=E:
\oracle\oradata\yxerp\DBVERIFY-验证完成检查的页总数
:
896000处理的页总数(数据):
450600失败的页总数(数据):
0处理的页总数(索引):
10095失败的页总数(索引):
0处理的页总数(其它):
275379处理的总页数(段)
:
0失败的总页数(段)
0空的页总数
159926标记为损坏的总页数:
0汇入的页总数
0HighestblockSCN
4
第三步---查看表的其他索引
selectindex_name,table_namefromdba_indexeswheretable_name='
PUB_QUERY_CONDITION'
;
INDEX_NAME
TABLE_NAME------------------------------------------------------------I_PUB_QUERY_CONDIT
PUB_QUERY_CONDITIONPK_PUB_QUERY_CONDI
PUB_QUERY_CONDITIONI_PUB_QUERY_CONDIT
第四步----依照查询的索引信息,重建I_PUB_QUERY_CONDIT
alterindexip_pub_query_contirebuildonline或者dropindexi_pub_query_condi
createindexi_pub_query_contionpub_query_condition(pk_templet,pk_crop)
tablespaceNNC_index;
第五步---查看警告日记
alterdatabasebackupcontrolfileto'
\tablespace1\'
Completed:
alterdatabasebackupcontrolfileto'
\tablespac
TueAug1921:
42:
442020
WedAug2005:
36:
132020
Thread1advancedtologsequence1885
Currentlog#3seq#1885mem#0:
\ORACLE\ORADATA\YXERP\03A
Currentlog#3seq#1885mem#1:
\ORACLE\DATA\
142020
ARC0:
Evaluatingarchivelog4thread1sequence1884
Beginningtoarchivelog4thread1sequence1884
Completedarchivinglog4thread1sequence1884
WedAug2015:
11:
412020
Thread1advancedtologsequence1886
Currentlog#2seq#1886mem#0:
Currentlog#2seq#1886mem#1:
\ORACLE\ORADATA\YXERP\
422020
Evaluatingarchivelog3thread1sequence1885
Beginningtoarchivelog3thread1sequence1885
Completedarchivinglog3thread1sequence1885
没有那个错误了,问题解决了。
把握Ora-006004194错误的解决方式
更新日期:
2007-10-2606:
36
出处:
网页教学网
站长整理
问:
我的数据库从头启动后,显现了Ora-006004194错误,日记如下:
SatJan2113:
55:
212006Errorsinfile/opt/oracle/admin/conner/bdump/:
internalerrorcode,arguments:
[4194],[43],[46],[],[],[],[],[]SatJan2113:
212006Errorsinfile/opt/oracle/admin/conner/udump/:
[4194],[45],[44],[],[],[],[],[]
请问具体应该如何解决?
答:
具体的解决方法是通过备份来进行恢复,因为Ora-006004194错误的显现说明UNDO段显现了问题,若是你没有备份,业能够通过特殊的初始化参数进行强制启动,下文针对Oracle的隐含参数进行恢复说明(由于你的实际情形可能会有所出入,因此请你进行测试前先行备份)。
◆第一你需要确信当前的回滚段名称,注释:
(能够从alert文件中取得)
212006UndoSegment11OnlinedUndoSegment12OnlinedUndoSegment13OnlinedSuccessfullyonlinedUndoTablespace16.
◆注意:
对应的AUM(autoundomanagement)下的回滚段名称为:
'
_SYSSMU11$'
'
_SYSSMU12$'
_SYSSMU13$'
◆现在你能够修改参数文件,利用Oracle隐含参数_corrupted_rollback_segments将回滚段标记为损坏,然后启动数据库,Oracle那么会跳过关于这些回滚段的相关操作,强制启动数据库。
._corrupted_rollback_segments='
◆然后利用参数文件启动数据库:
[oracle@jumperdbs]$sqlplus"
/assysdba"
SQL*Plus:
Release.-ProductiononSatJan2113:
56:
472006Copyright(c)1982,2002,OracleCorporation.
Allrightsreserved.Connectedtoanidleinstance.SQL>
startuppfile=ORACLEinstancestarted.TotalSystemGlobalArea
bytesFixedSize
451864bytesVariableSize
bytesDatabaseBuffers
bytesRedoBuffers
667648bytesDatabasemounted.Databaseopened.
此刻数据库正常Open。
◆注意观看alert文件所取得的如下信息:
57:
032006SMON:
enablingtxrecoverySMON:
abouttorecoverundosegment11SMON:
markundosegment11asneedsrecoverySMON:
abouttorecoverundosegment12SMON:
markundosegment12asneedsrecoverySMON:
abouttorecoverundosegment13SMON:
markundosegment13asneedsrecoverySatJan2113:
032006DatabaseCharactersetisZHS16GBKSatJan2113:
042006CreatedUndoSegment_SYSSMU1$UndoSegment1OnlinedCompleted:
ALTERDATABASEOPENaSatJan2114:
02:
112006SMON:
markundosegment13asneedsrecovery
◆此刻你能够从头创建新的UNDO表空间,删除显现问题的表空间,修改参数文件,由参数文件生成新的spfile,然后从头启动数据库:
createundotablespaceundotbs1
2
datafile'
/opt/oracle/oradata/conner/'
size10M;
Tablespacecreated.SQL>
altersystemsetundo_tablespace=undotbs1;
Systemaltered.SQL>
droptablespaceundotbs2;
Tablespacedropped.
◆请注意现在的alert文件记录的:
SatJan2114:
03:
292006createundotablespaceundotbs1datafile'
size10MSatJan2114:
292006CreatedUndoSegment_SYSSMU2$CreatedUndoSegment_SYSSMU3$CreatedUndoSegment_SYSSMU4$CreatedUndoSegment_SYSSMU5$CreatedUndoSegment_SYSSMU6$CreatedUndoSegment_SYSSMU7$CreatedUndoSegment_SYSSMU8$CreatedUndoSegment_SYSSMU9$CreatedUndoSegment_SYSSMU10$CreatedUndoSegment_SYSSMU14$StartingcontrolautobackupControlautobac