|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
曾经的功能列表可能会迅速变得过时了。而且,有些功能对有的应用程序非常重要,但是对别的应用程序则不一定。oracle|毛病|办理
ORACLE罕见毛病代码的剖析与办理(三)
文章源自于世纪易网
ORA-00600:internalerrorcode,arguments:[num],[?],[?],[?],[?]
发生缘故原由:这类毛病一般为ORACLE的外部毛病,只对OSS和ORACLE开辟有效。ORA-600的毛病常常陪伴跟踪文件的形态转储
(体系形态和历程形态),体系形态存储将包含ORACLERDBMS持有确当前工具的信息,历程形态转储则将显现特别历程持
有的工具,当历程切合了某毛病前提时,常常是因为一些信息取自它持有的一个块,假如我们晓得这些毛病历程持有的
块,就简单跟踪成绩的来历。
办理办法:一样平常来讲呈现这个毛病我们自己是没法办理的,只要从进步体系自己各方面来办理这个外部成绩,如增添硬件
设备,调剂体系功能,利用OPS(固然OPS从某种意义上说并非一种好的办理体例)等。ORA-600毛病的第一个变量用于标
记代码中毛病的地位(代码中的每一个部分的第一变量都纷歧样),从第二个到第五个变量显现附加信息,告知OSS代码在哪
里呈现了毛病。
一个报错例子以下:
ORA-00600:internalerrorcode,arguments:[1237],[],[],[],[],[],[],[]
响应的英文以下:
Cause:ThisisacatchallinternalerrormessageforOracleprogramexceptions.Itindicatesthataprocess
hasmetalow-level,unexpectedcondition.Variouscausesofthismessageinclude:
Time-outs(超时)
Filecorruption(文件太老)
Faileddatachecksinmemory(内存检索失利)
Hardware,memory,orI/Oerrors(硬件、内存大概磁盘毛病)
Incorrectlyrestoredfiles(毛病的重修文件)
ORA-03113:end-of-fileoncommunicationchannel
发生缘故原由:通信不一般停止,从而招致通信通道停止
办理办法:1>.反省是不是有服历程不一般逝世机,可从alert.log得知
2>.反省sql*NetDriver是不是毗连到ORACLE可实行程序
3>.反省服务器收集是不是一般,如收集欠亨或不不乱等
4>.反省统一个网上是不是有两个一样名字的节点
5>.反省统一个网上是不是有反复的IP地点
响应的英文以下:
Cause:Anunexpectedend-of-filewasprocessedonthecommunicationchannel.Theproblemcouldnotbe
handledbytheNet8,twotask,software.Thismessagecouldoccuriftheshadowtwo-taskprocessassociated
withaNet8connecthasterminatedabnormally,orifthereisaphysicalfailureoftheinterprocess
communicationvehicle,thatis,thenetworkorservermachinewentdown.
Action:Ifthismessageoccursduringacommectionattempt,checkthesetupfilesfortheappropriateNet8
driverandconfirmNet8softwareiscorrectlyinstalledontheserver.Ifthemessageoccursaftera
connectioniswellestablished,andtheerrorisnotduetoaphysicalfailure,checkifatracefilewas
generatedontheserveratfailuretime.ExistenceofatracefilemaysuggestanOracleinternalerror
thatrequirestheassistanceofcustomersupport.
ORA-00942:tableorviewdoesnotexist
发生缘故原由:这是因为装载的表或视图不存在,多数是CATEXP.SQL还没有运转,没法实行Export视图,假如CATEXP.SQL已运
行,则多是版本毛病。
办理办法:由于Import和Export共享的一些视图是经由过程运转CATEXP.SQL来装载的(它们具有不异的视图),其实不天生独自
的CATEXP.SQL,因此形成视图与Export代码分歧步,较难坚持相互之间的兼容,用户就必需创建本人的Export使用,从而
制止ORA-00942的毛病。
响应的英文以下:
Cause:Thetableorviewentereddoesnotexist,asynonymthatisjnotallowedherewasused,oraviewwas
referencedwhereatableisrequired.Existingusertablesandviewscanbelistedbyqueryingthedata
dictionary.Certainprivilegesmayrequiredtoaccessthetable.Ifanapplicationreturnedthismessage,the
tabletheapplicationtriedtoaccessdoesnotexistinthedatabase,ortheapplicationdoesnothave
accesstoit.
Action:Checkeachofthefollowing:
Thespellingofthetableorviewname.
Thataviewisnotspecifiedwhereatableisrequired
Thatanexistingtableorviewnameexists.
Contactthedatabaseadministratorifthetableneedstobecreatedorifuserorapplicationpriviledes
arerequiredtoaccessthetable.
Also,ifattemptingtoaccessatableorviewinanotherschema,makecertainthecorrectschemais
referencedandthataccesstotheobjectisgranted.
ORA-01598:rollbacksegment“name”isnotonline
Cause:TherollbacksegmentwastakenofflineeithermanuallyorbySMON.
Action:CheckthestatusoftherollbacksegmentinDBA_ROLLBACK_SEGS.
ORA-1636:rollbacksegment“name”isalreadyonline
Cause:Arollbacksegmentcanonlybeusedbyoneinstanceandaninstanceistryingtobringarollback
segmentonlinethatisalreadyinuse.
Action:Checkthatthevaluessetintheinitializationparameterfileforparameters
ROLLBACK_SEGMENTS,ROLLBACK_SEGMENT_INITIAL,andROLLBACK_SEGMENT_COUNTarecorrectlysetfortheinstance
whiththeproblem,Alsocheckthattheinstanceisusingthecorrectinitializationparameterfile.Makesure
youarenotconfusedaboutthedifferencebetweenprivateandpublicrollbacksegments.SeetheOracle8
ServerAdministrator’sGuideformoreinformationaboutusingrollbacksegmentsinparallermode.
上述毛病均为我们在利用回滚段时对照罕见的成绩,ORA-01598指明以后利用的回滚段的形态为“notonline”,不克不及使
用,将它改成“online”形态便可利用;ORA-01636指明以后回滚段已为“online”形态,能够间接利用,不必再汇合
它。
ORA-1636signalledduring:alterrollbacksegmentrb00online
我们在做统计时还大概碰到下述成绩:一个rollbacksegment的形态为”NeedsRecovery”的征象,这是因为ORACLE回退
一个事物表中的没有提交的事物时失利所酿成的。一般缘故原由为一个datafile大概tablespace是在offline的形态大概一个
undo的方针被损坏大概rollbacksegment被损坏。办理的举措是将一切的tablespace和datafile都置为online形态,假如
不克不及办理则做上面的事情:1>.在initsid.ora中到场event=”10015tracenamecontextforeverlever
10”;2>.shutdown数据库然后重启;3>.在$ORACLE_HOME/rdbms/log下,找到startup时天生的tracefile;4>.在trace文件
中,找到以下信息“errorrecoverytx(#,#)object#”;5>.依据object#(与sys.dba_objects表中的object_id不异)在
sys.dba_objects表中查出该object的名字;6>.将该objectdrop失落;7>.在init.ora文件中将该rollbacksegment放回
rollback_segments参数中,删除event;8>.shutdown数据库然后重启。此时”NeedsRecovery”的成绩应当是完整办理
了,不然就是rollbacksegment被损坏了。
ORA-01688:unabletoextendtablename.namepartitionNAMEbyNUMintablespaceNAME
发生缘故原由:指定的tablespace空间已被占用满,没法扩大。
办理办法:利用“ALTERTABLESPACEADDDATAFILE”命令增添文件体系文件和原始分区,大概增添INITIAL的巨细(如:
altertablespaceCDRS101defaultstorage(next500Mpctincrease1))应当可以办理,不然就是有人利用你的表空间
上创立了一个对照年夜的数据文件招致你的表空间不敷用。
一个报错例子以下:
ORA-1688:unabletoextendtableRMMCDR.LOCAL_CDRpartitionLOCAL_CDR101by460800intablespaceCDRS101
响应的英文以下:
Cause:Anextentcouldnotbeallocatedforatablesegmentintablespace
Action:UsetheALTERTABLESPACEADDDATAFILEstatementtoaddoneormorefilestothespecifiedtablespace
MySQL的低成本来自于其简单性吗?它的普及性是由于其低成本吗?其实,在MySQL的最“好”与最“不好”的功能之间没有明显的分界线,但它们组合在一起就形成了一副让我们欣赏的作品。 |
|