华为公司Oracle11g常见故障处理_第1页
华为公司Oracle11g常见故障处理_第2页
华为公司Oracle11g常见故障处理_第3页
华为公司Oracle11g常见故障处理_第4页
华为公司Oracle11g常见故障处理_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

./Oracle11g数据库常见故障处理TSD配套产品服务部 2009年6月27日目标通过本课程的学习,您将了解以下内容:Oracle11g数据库常见故障及处理安装和配置类问题实例管理类问题数据管理类管理数据库恢复类问题管理工具类问题ORA-00600介绍和案例分析ORA-07445介绍和案例分析目录安装配置类实例管理类数据管理类数据恢复类管理工具类ORA-00600ORA-07445目标通过本章节的学习,您将了解以下内容:ORACLE11g常见的安装类问题这些问题的分析和解决如何在客户端启动图形界面问题用客户端连接到Unix或者Linux平台上安装数据库软件时,常常无法启动图形界面,因此无法进行安装解决以root用户执行:xhost+客户端需要安装xmanager,并且通过Xbrowser登陆到主机以oracle用户执行:exportDISPLAY=客户端IP:0.0xclock<测试能否显示图形界面>如果图形界面还出不来,可以尝试exportDISPLAY=客户端IP:1.0如何在服务器端启动图形界面问题如果直接在服务器上安装数据库软件时,有时也会碰到不能启动图形界面的问题解决以root用户执行:xhost+以oracle用户执行:exportDISPLAY=:0.0xclock<测试能否显示图形界面>安装CRS时,无法添加节点故障现象AIX或HPUX上安装CRS的过程中,有一步是添加节点,正常情况下,应该可以添加本地节点和远程节点,但添加远程节点时失败。解决方法如果要安装的CRS需要依赖操作系统双机管理共享文件,那么安装CRS时,必须保证操作系统双机服务启动如果不需要操作系统双机软件,而只需要ASM管理共享存储,那么必须在操作系统上删除双机软件,对于HACMP,要保证没有安装包,对于HPUX,要保证没有安装Serviceguard包AIX上安装CRS时提示检查不通过故障现象在AIX5L上安装CRS时,当安装程序自动检查操作系统补丁时,提示bos.cifs_fs_rte未安装解决办法安装所需AIX程序包smittyinstallp重启操作系统shutdown-FrCRS安装最后阶段在第二个节点运行root.sh报错故障现象安装CRS最后阶段,在第二个节点执行root.sh时,报错:Thegiveninterface<s>,"eth2"isnotpublic.PublicinterfacesshouldbeusedtoconfigurevirtualIPs解决办法以root身份手工在第二个节点执行vipcacd/<CRS安装目录>/bin./vipca安装RAC时报ORA-00603,ORA-29702故障现象在安装RAC时,出现下列错误:ORA-00603:ORACLEserversessionterminatedbyfatalerror或ORA-29702:erroroccurredinClusterGroupServiceoperation原因分析RAC的节点名出现在了/etc/hosts文件中的回送地址中xxxx解决方法如果机器名出现在回送地址条目中,如下所示:rac1localhost.localdomainlocalhost需要灾回送地址中删除掉机器名,如下:localhost.localdomainlocalhost无法连接数据库ORA-12521,ORA-12505故障现象连接数据库时报错:原因分析客户端tnsnames.ora配置的连接串中,关于instance_name的设置不正确,这个错误类似ORA-12505:TNS:listenercouldnotresolveSIDgiveninconnectdescriptor解决方法检查数据库的instance_name:selectinstance_namefromv$instance;修改客户端tnsnames.ora文件,设置正确的instance_name或SID无法连接数据库ORA-12541故障现象连接数据库时报错:ERROR:ORA-12541:TNS:nolistener原因分析可能原因一:客户端tnsnames.ora配置的连接串中,监听端口号设置不正确可能原因二:数据库服务器监听没有启动解决方法检查客户端tnsnames.ora文件,设置正确的监听端口号检查服务器上的监听是否正常启动无法连接数据库ORA-12535故障现象连接数据库时报错: ERROR: ORA-12535:TNS:operationtimedout原因分析可能原因:客户端tnsnames.ora中,服务器IP地址设置错误可能原因:防火墙阻断了连接解决方法正确配置tnsnames.ora中的服务器IP地址利用Tnspingconnectstring,测试配置是否正确,如果不通,检查网络。连接RAC数据库报ORA-12545故障现象当两个节点的RAC实例都起来的时候,使用RAC的TAF方式的连接数据库时,报ORA-12545的错误。 ora-12545:连接因对象主机或对象不存在而失败解决检查客户端的hosts文件<C:\WINDOWS\system32\drivers\etc\hosts文件配置,将数据服务器各个节点的VIP都配置进去,例如:0node1-vip1node2-vip>检查客户端的tnsnames.ora和hosts<C:\WINDOWS\system32\drivers\etc>文件配置,正确配置例子如下:>检查数据库各节点的local_listener设置,确保其对应的IP地址是当前节点的VIP,如果不是,请按下面的方式修改: altersystemsetlocal_listener='<ADDRESS=<PROTOCOL=TCP><HOST=node1-vip><PORT=1521>>‘scope=spfilesid=‘<sid1>’; altersystemlocal_listener='<ADDRESS=<PROTOCOL=TCP><HOST=node2-vip><PORT=1521>>'scope=spfilesid=‘<sid2>’;目录安装配置类实例管理类数据管理类数据恢复类管理工具类ORA-00600ORA-07445目标通过本章节的学习,您将了解以下内容:ORACLE11g实例的常见问题或故障;这些问题或故障的诊断分析和解决方法;怎么查看数据库是32位还是64位?问题怎么查看数据库当前运行的是32位还是64位的?解决方法一: 用sqlplus"/assysdba"登陆数据库,连接信息中有"64bit"出现的,表示是64位数据库,如果没有出现,则表示是32bit数据库: Connectedto: OracleDatabase11gEnterpriseEditionRelease.0-64bitProduction 方法二:以oracle用户执行: file$ORACLE_HOME/bin/oracle,输出结果会显示32bit或64bit怎么杀掉特定的会话问题发现某个会话占用资源很大,怎么杀掉该会话?解决方法一: 查询出会话的sid,serial#selectsid,serial#fromv$sessionwhere…;Altersystemkillsession‘sid,serial#’;方法二:查询出会话的paddrSelectpaddrfromv$sessionwhere….;进而找出spidSelectspidfromv$processwhereaddr=‘上面查询的paddr’在操作系统上kill掉该进程kill-9<spid>怎么查看数据库的警告日志问题如何查看数据库的警告日志?解决对于11g以前版本,数据库日志alert<SID>.log默认存放在$ORACLE_BASE/admin/<SID>/bdump目录下对11g,数据库日志alert<SID>.log默认存放在$ORACLE_BASE/diag/rdbms/<dbname>/<InstanceName>/trace目录下也可以用adrci命令进行查看。可以利用showparameterbackground_dump_dest,得到日志文件存放的目录位置sqlplus"/assysdba"showparameterbackground_dump_dest怎么修改数据库的归档模式问题如何修改数据库的归档模式?解决情况1:非RAC数据库Sqlplus"/assysdba"altersystemsetlog_archive_format=‘<dbname>_%t_%s.arc’scope=spfile;<9i>altersystemsetlog_archive_format=‘<dbname>_%t_%s_%r.arc’scope-spfile;<10g,11g>Altersystemsetlog_archive_start=truescope=spfile;<9i>Altersystemsetlog_archive_dest_1=‘location=/xx/xxx/xxx’scope=spfile;ShutdownimmediateStartupmountAlterdatabasearchivelog;Alterdatabaseopen;Archiveloglist;情况2:RAC数据库在节点1上:Sqlplus"/assysdba"在节点1上:altersystemsetcluster_database=falsescope=true;在节点1上:altersystemsetlog_archive_format=‘<dbname>_%t_%s.arc’scope=spfile;<9i>在节点1上:altersystemsetlog_archive_format=‘<dbname>_%t_%s_%r.arc’scope-spfile;<10g,11g>在节点1上:Altersystemsetlog_archive_start=truescope=spfile;<9i>在节点1上:Altersystemsetlog_archive_dest_1=‘location=/xx/xxx/xxx’scope=spfile;在所有节点上:Shutdownimmediate在节点1上:Startupmount在节点1上:Alterdatabasearchivelog;在节点1上:Alterdatabaseopen;在节点1上:altersystemsetcluster_database=truescope=true;在节点1上:shutdownimmediate在所有节点上:startup在所有节点上:archiveloglist连接数据库报ORA-01031故障现象在windows平台下,用sqlplus连接数据库时报错: 01031,"insufficientprivileges" 解决方法找到oracle安装目录下的../network/admin/sqlnet.ora文件将下面的设置注释掉:#SQLNET.AUTHENTICATION_SERVICES=<NTS>ORA-00838和ORA-00844故障现象修改memory_target参数时,报错: ORA-00838:SpecifiedvalueofMEMORY_TARGETistoosmall,needstobeatleast 1280M或者启动实例时,报错: ORA-00844:ParameternottakingMEMORY_TARGETintoaccount,seealertlogformoreinformation原因分析在Oracle11g中,引入了AMM功能,并且新加了memory_target参数,此参数要么或者等于0,或者要大于sga_target+pga_aggregate_target的值,否则就会出错解决方法设置合适的memory_target值Linux上平台报ORA-00845故障现象启动实例时,报错:ORA-00845:MEMORY_TARGETnotsupportedonthissystem原因分析Oracle11g引入了AMM功能,并且在linux平台上,使用的是/dev/shm做为oracle内存,因此,必须保证memory_target<=/dev/shm的大小解决方法设置合适的memory_target值,保证memory_target</dev/shm如果/dev/shm太小,则增大/dev/shm值,设置/dev/shm的方法参加《Oracle11g安装指导书》ORA-01555故障现象用户进程执行一个sql失败,后台警告日志有报错:ORA-01555causedbySQLstatementbelow<QueryDuration=14616sec,SCN:0x0000.1e5294a0>:原因分析ORA-01555错误是生产库中常见的一个snapshottooold错误,oracle需要用到undo信息来保证SQL查询的一致性读,当一个SQL运行时间较长时,它用到的undo信息有可能由于其它DML事务的空间需求而被覆盖掉了,此时该SQL查询就会造成ORA-01555的错误。解决方法方法一:最根本的解决办法,是优化SQL,减少SQL的逻辑和物理读方法二:如果undo空间确实很小,可以考虑增大UNDO空间方法三:增加undo_rentention值方法四:如果是9i以上数据库,推荐使用AutomaticundomanagementORA-04031故障现象数据库日志出现以下错误:ORA-04031:unabletoallocate4096bytesofsharedmemory原因分析当Oracle尝试在共享内存池分配大的连续内存失败时,就会报ORA-04031的错误,最常见的原因是sharedpool的碎片过多解决方法碎片过多的原因多数是因为sql语句没有使用绑定变量,硬解析过多,因此调整SQL使用绑定变量是一个重要的方面将经常使用的大SQL和PL/SQL常驻内存:Dbms_shared_pool.keep<‘object_name’>;推荐使用ORACLE的ASMM功能增加shared_pool_size和shared_pool_reserved_size大小增加large_pool_size大小ORA-19815故障现象10g或11g数据库的警告日志出现错误:ORA-19815:WARNING:db_recovery_file_dest_sizeof2147483648bytesis100.00%used,andhas0remainingbytesavailable.原因分析闪回恢复区定义大小是2147483648,已经被占满了,因此数据库报错,如果归档日志也放在这里的话,数据库就会hang住了。解决方法如果数据库hang住了,这时可以先临时增大闪回恢复区的大小,方法是:altersystemsetdb_recovery_file_dest_size=xxx;接下来需要释放recoveryfilearea空间,有以下方法:方法一:删除无用的归档日志 $rmantarget/ RMAN>Crosscheckarchivelogall; RMAN>deleteexpiredarchivelogall;方法二:修改你的备份保留策略如果你的备份放在闪回恢复区,修改备份保留策略,减少保留空间方法三:调整你的归档保留策略如果你使用了第三方备份软件备份到其它介质上,可以调整备份归档的策略,调整为备份完删除归档如果你配置了dataguard,可以调整归档删除策略,调整为: CONFIGUREARCHIVELOGDELETIONPOLICYTOAPPLIEDONSTANDBY;目录安装配置类实例管理类数据管理类数据恢复类管理工具类ORA-00600ORA-07445目标通过本章节的学习,您将了解以下内容:ORACLE数据管理方面的常见问题或故障;这些问题或故障的诊断分析和解决方法;如何将查询内容输出到文本问题:在二线工程诊断问题时,通常需要现场工程师收集一些信息,那么如何将查询结果输出到文本呢?解决:spool完整文件名查询语句…….Spooloff表空间无法扩展ORA-01653故障现象:在向表插入数据时,报表空间无法扩展的错误:SQL>insertintot_sg1select*fromdba_objects;insertintot_sg1select*fromdba_objects*ERRORatline1:ORA-01653:unabletoextendtableSYS.T_SG1by4intablespaceTBS_TEST原因分析表空间已经没有剩余空间可用,并且表空间对应的数据文件不是自动扩展的或者尽管数据库文件是自动扩展的,但数据文件所在的文件系统已经没有剩余空间了解决:方法一:修改表空间的数据文件扩展属性<假设数据文件所在文件系统有剩余空间>alterdatabasedatafile14autoextendon;方法二:增大已有数据文件的大小Alterdatabasedatafile14resizexxxx;方法三:为表空间增加数据文件Altertablespacetbs_testadddatafile‘xxxx’sizexxxxxxx;Exp时报ORA-00904故障现象:在执行逻辑导出exp时,发生错误,报错代码是ora-00904原因分析可能原因之一是导出客户段的版本大于数据库服务器的版本Exp有以下规则需要遵守:Oracle的Export/Import工具只能连接到拥有更高或者一样的Export/Import版本的数据库从Oracle低版本的Export出来的数据可以Import到Oracle高版本中,反之则不行解决:用和服务器数据库版本一样或更低的客户端来执行EXP或者直接在服务器执行导出ORA-00257故障现象:对重做日志进行归档时,报ORA-00257错误,数据库处于hang状态原因分析该错误表示归档目录空间不够,无法完成重做日志的归档工作,并造成数据库hang解决方法扩大归档目录所在的文件系统备份和清理无用的归档文件如果使用了db_recovery_file,调整db_recovery_file_dest_size参数SUSE平台上如何创建ASM磁盘组问题SUSE平台上,如何创建ASM磁盘组?解决查看系统中有哪些裸设备raw–qa看数据库已经用了哪些磁盘设备selectasdg_name,dg.free_mbasdg_freeMB,dg.stateasdg_state,d.MOUNT_STATUSasd_mount_status,d.HEADER_STATUSasd_header_status,d.MODE_STATUSasd_mode_status,d.STATEasd_state,d.FREE_MBasd_freeMB,d.PATHd_path,d.os_MBd_os_MBfromv$asm_diskgroupdg,v$asm_diskd

wheredg.group_number<+>=d.group_number 显示结果D_HEADER_STATUS=candidate,D_MOUNT_STATUS=closed,D_MODE_STATUS=online,D_STATE=normal的是数据库没有使用得到磁盘设备,可以用来创建磁盘组。登陆ASM实例,创建磁盘组exportORACLE_SID=+ASM1Sqlplus"/assysdba"--建立externalredundancy的磁盘组<无冗余>Creatediskgroupmydgexternalredundancydisk‘/dev/raw/rawx’;--建立normalredundancy磁盘组<一份冗余,至少两个磁盘>CreatediskgroupmydgnormalredundancyFailgroupfg1disk‘/dev/raw/rawxx’Failgroupfg2disk‘/dev/raw/rawxx’;--建立highredundancy磁盘组<两份冗余,至少三个磁盘>CreatediskgroupmydghighredundancyFailgroupfg1disk‘/dev/raw/rawxx’Failgroupfg2disk‘/dev/raw/rawxx’Failgroupfg3disk‘/dev/raw/rawxx’;如何查询ASM磁盘组的空间使用情况问题在日常运行中,我们需要监控ASM磁盘组的空间剩余情况,如何查询ASM的磁盘组空间使用情况呢?解决方法一:用SQL语句selectgroup_number,name,type,state,total_mb,free_mbfromv$asm_diskgroup;方法二:用ASMCMDexportORACLE_SID=<asm实例名>asmcmdASMCMD>lsdg如何创建ASM表空间问题如何创建ASM表空间?解决先查看系统中的已有哪些磁盘组,并查看是否其剩余空间,selectgroup_number,name,type,TOTAL_MB,FREE_MB,USABLE_FILE_MBfromv$asm_diskgroup;如果存在剩余空间满足要求的磁盘组,可以直接创建ASM表空间Createtablespace表空间名称datafile‘+DGNAME’sizexxxM;如果不存在剩余空间满足要求的磁盘组,可以直接创建ASM表空间目录安装配置类实例管理类数据管理类数据恢复类管理工具类ORA-00600ORA-07445目标通过本章节的学习,您将了解以下内容:ORACLE各种常见的数据恢复的场景这些场景下的数据恢复的具体方法非归档模式的数据库,丢失数据文件故障现象丢失某个数据库文件,造成了数据库无法启动,同时数据库处于非归档模式,也没有冷备份,启动时的错误信息如下: ORA-01157:cannotidentify/lockdatafile3-seeDBWRtracefile ORA-01110:datafile3:'D:\ORACLE\ORADATA\TEST\USERS01.DBF'解决方法将数据库启动到mount状态下:sqlplus"/assysdba"startupmount从数据库中删除该数据文件alterdatabasedatafile‘xx’offlinedrop;打开数据库alterdatabaseopen;备注:该方法可正常打开数据库,但该datafile中的数据将丢失如果误删除了system表空间的datafile,则该方法不奏效如果该表空间还包含其它数据文件,用EXP把数据备份出来,然后删除表空间,重建表空间,将数据导入。如果不包含其它数据文件,则直接删除表空间就可以了。归档模式数据库丢失某数据文件,无备份,但有该数据文件创建以来的归档日志故障现象归档模式的数据库,丢失了某个数据库文件,造成了数据库无法启动,同时没有数据库的全备份,但有该数据文件创建以来的归档日志,数据库无法启动: ORA-01157:cannotidentify/lockdatafile3-seeDBWRtracefile ORA-01110:datafile3:'D:\ORACLE\ORADATA\TEST\USERS01.DBF解决方法启动数据库到mount状态startupmount手工创建丢失的数据文件alterdatabasecreatedatafile‘oldfname’as‘newfname’sizexxxreuse;利用归档日志对数据文件进行恢复recoverdatafile‘newfname’;或者recoverdatafilen;打开数据库alterdatabaseopen;备注:该方法可正常打开数据库,而且不会丢失数据该方法有两个前提丢失的数据文件不能是系统文件不能丢失或损坏控制文件非current和active的redolog损坏故障现象误删除了redolog,或者redolog被损坏,数据库能mount,不能open: ORA-00313:openfailedformembersofloggroup3ofthread1 ORA-00312:onlinelog3thread1:'/oracle10/oradata/ora10g/redo03.log'解决方法查询v$log视图,确认损坏的redologgroup是非current和activeSQL>selectgroup#,thread#,sequence#,archived,statusfromv$log;GROUP#THREAD#SEQUENCE#ARCHIVEDSTATUS 11103YESINACTIVE 21104NOCURRENT 31102YESINACTIVE如果该日志已经归档,用下面的命令清除日志内容Alterdatabaseclearlogfilegroup3;如果该日志没有归档,用下面的命令清除日志内容Alterdatabaseclearunarchivedlogfilegroup3;打开数据库Alterdatabaseopen;尽快做一个数据库全备份current或active的redolog损坏故障现象误删除了redolog,或者redolog被损坏,数据库不能打开: ORA-00313:openfailedformembersofloggroup2ofthread1 ORA-00312:onlinelog2thread1:'/oracle10/oradata/ora10g/redo02.log'解决方法查询v$log视图,确认损坏的redologgroup是current或activeSQL>selectgroup#,thread#,sequence#,archived,statusfromv$log;GROUP#THREAD#SEQUENCE#ARCHIVEDSTATUS 112YESINACTIVE 214NOCURRENT 313YESINACTIVE情况1:当前日志文件还存在,只是逻辑损坏,并且当前日志没有未决事务需要实例恢复alterdatabaseclearunarchivedlogfilegroup2;--不会报错recoverdatabaseuntilcancel;alterdatabaseopenresetlogs;一般情况下,该方法不奏效,如果clear报错,则用其它方法.情况2:当前日志完全损坏,且有未决事务,数据库有备份alterdatabaseclearunarchivedlogfilegroup2;--会报错ERRORatline1:ORA-01624:log1neededforcrashrecoveryofthread1restoredatabase;recoverdatabaseuntilcancel;--选择autorecoverdatabaseuntilcancel;alterdatbaseopenresetlogs;尽快做一个数据库全备份情况3:当前日志完全损坏,且有未决事务,数据库无备份shutdownimmediate;_allow_resetlogs_corruption=true;startupmountpfile=‘xxx’;recoverdatabaseuntilcancel;alterdatbaseopenresetlogs;shutdownimmediate_allow_resetlogs_corruption=true;Startup尽快做一个数据库全备份临时表空间的数据文件损坏故障现象临时表空间的数据文件发生损坏,系统出现故障,如何恢复解决方法在10g及以上版本数据库,启动数据库时,如果发现临时数据文件损坏,会自动创建,如果在数据库运行过程中,可以手工重建:createtemporarytablespacetemp1tempfile‘xx’sizexx’;alterdatabasedefaulttemporarytablespacetemp1;--系统默认临时表空间的重建需要执行这一步,否则不需要droptablespacetemp;altertablespacetemp1renametotemp;在10g以前版本数据库,可以在数据库打开后或运行过程中,手工重建就可以了alterdatabasedatafile‘xxx’offlinedrop;--如果数据库打不开,就执行这个步骤createtemporarytablespacetemp1tempfile‘xx’sizexx’;alterdatabasedefaulttemporarytablespacetemp1;--系统默认临时表空间的重建需要执行这一步,否则不需要,9i以前版本也不需要。droptablespacetemp;altertablespacetemp1renametotemp;UNDO数据文件损坏,数据库无法启动故障现象Undo数据文件发生了丢失或损坏,数据库启动报错: ORA-01157:cannotidentify/lockdatafile2-seeDBWRtracefile ORA-01110:datafile2:'/oracle10/oradata/ora10g/undotbs01.dbf'解决方法如果数据库有备份,则利用备份进行恢复如果数据库没有备份,则利用重建undo表空间的方式进行恢复startupmountalterdatabasedatafilenofflinedrop;<删除损坏的undo文件>alterdatabaseopen;createundotablespacexxx…;<创建一个新的undo表空间>altersystemsetundo_tablespace=xxx;<指向新的undo表空间>droptablespaceyyyincludingcontents;<删除原来的undo表空间>控制文件损坏故障现象控制文件发生了损坏,数据库已经无法启动,报错信息如下: ORA-00202:controlfile:'D:\Oracle\oradata\chen\control01.ctl' ORA-27041:unabletoopenfile OSD-04002:unabletoopenfile解决方法情况一:控制文件有镜像,且镜像控制文件没有被损坏关闭数据库将没有损坏的控制文件覆盖掉损坏的控制文件,或者修改参数文件的control_files参数,去掉损坏的控制文件重新启动数据库情况二:控制文件无镜像,或者镜像的所有控制文件都损坏了恢复控制文件如果控制文件有备份,从备份中恢复控制文件 restorecontrolfilefrom‘<yourcontrolfilebackupset>’如果控制文件有snapshot,将snapshot控制文件替换掉原损坏控制文件如果做过alterdatabasebackupcontrolfiletotrace的控制文件脚本备份,可以用trace文件中的重建脚本来创建控制文件,如果没有备份,也没有trace备份,只能手工编写脚本创建控制文件,前提是你对数据库文件结构非常清楚恢复和打开数据库如果是用createcontrolfile…noresetlogs方式重建的控制文件recoverdatabase;alterdatabaseopen;altertablespacetempaddtempfile‘xx’sizexxreuse;--对所有临时表空间做此操作如果是用createcontrolfile…resetlogs方式重建的控制文件,或者通过备份或快照恢复的控制文件recoverdatabaseusingbackupcontrolfile;alterdatabaseopenresetlogs;altertablespacetempaddtempfile‘xx’sizexxreuse;--对所有临时表空间做此操作目录安装配置类实例管理类数据管理类数据恢复类管理工具类ORA-00600ORA-07445目标通过本章节的学习,您将了解以下内容:ORACLE工具<OEM等>的各种常见问题或故障;这些问题或故障的诊断分析和解决方法;OracleEnterpriseManager出现乱码故障现象启动oracleenterprisemanager服务之后,通过IE浏览器使用OEM来管理数据库时,界面上的很多按钮出现乱码,无法识别原因分析这是因为OEM服务的中文字符集设置不对,使得中文在OEM界面中无法无法正常显示,从而出现乱码解决方法可以通过修改IE浏览器的设置,让OEM用英文环境,平时还是用英文环境比较明晰,具体操作如下:打开IE浏览器选择‘工具"-->"Internet选项"-->"常规"选择"语言",默认只有"中文",选择"添加",加入"英语<美国>"调整顺序,把"英语<美国>"移动到最上面,确定然后重新打开IE,登陆OEM。无法使用SQLPLUS,报ORA-12638故障现象Windows平台上Oracle数据库,本机无法通过SQLplus,

PLSQLDeveloper等工具访问Oracle数据库,连接时报错:OracleORA-12638:

Credentialretrievalfailed。但其它服务器上可通过SQLplus,

PLSQLDeveloper正常访问Oracle。解决方法打开SQLNET.ora文件,将SQLNET.AUTHENTICATION_SERVICES=〔NTS一行注释,如:

#SQLNET.AUTHENTICATION_SERVICES=〔NTSrman:can'topentarget故障现象在执行rmantarget/命令时,系统报错: oracle@linux:~>rmantarget/ rman:can'topentarget原因分析这常常发生在linux操作系统上,因为linux上也有一个rman命令,与oracle的rman命令同名解决方法方法一:进入到oracle的rman命令所在目录下来执行rmanoracle@linux:~>cd$ORACLE_HOME/binoracle@linux:~/product/9ir2/bin>./rmantarget/方法二:修改oracle用户的环境变量配置文件,编辑其中的PATH变量值,将$ORACLE_HOME/bin放在最前面exportPATH=$ORACLE_HOME/bin:$PATH目录安装配置类实例管理类数据管理类数据恢复类管理工具类ORA-00600ORA-07445目标通过本章节的学习,您将了解以下内容:ORA-00600错误的总体介绍常见的ORA-00600错误及其解决方法ORA-00600总体介绍报错原因Ora-00600错误的发生,本质上是因为OracleRDBMS程序代码在运行过程中发生了程序意外<programexception>,它属于Oracle的内部错误。Ora-00600错误通常是由于OracleBUG引发的,当然,其它一些情况也有可能引发,比如操作系统资源不够,或者硬件出现问题时,或者不正确的操作也有可能引起。报错参数在出现Ora-00600错误时,通常伴随具体的报错参数,每个参数被方括号包围,格式如下:ORA-00600internalerrorcode,arguments:[string],[string],[string],[string],[string],[string],[string],[string]第一个参数表示了发生意外的ORACLE代码的位置,它对定位问题起关键作用剩下的参数提供更进一步的报错信息解决手段通常在出现ORA-00600时,都会在USER_DUMP_DEST或BACKGROUND_DUMP_DEST目录下<11g的目录结构不同>产生一些trace文件,同时在alert<SID>.log文件中也会产生报错信息,这些信息和trace文件可以用来帮助分析错误原因还可以根据报错前数据库的日志,以及询问现场操作人员,分析数据库在报错之前进行了哪些操作,分析是不是因为不正确的操作引发了ORA-00600错误还可以通过OracleMetalink来更深入的查找报错信息的说明,Oraclemetalink还提供了ORA-600/ORA-7445Troubleshooter功能,可以查找相同ORA-00600错误的案例如果没有关于您的报错信息的说明,需向Oraclesupport请求支持,比如在metalink上开TAR.ORA-00600[keltnfy-ldmInit]故障现象当启动数据库时,发生ora-00600错误:ORA-00600:internalerrorcode,arguments:[keltnfy-ldmInit],[46],[1],[],[],[],[],[]原因分析这是由于没有正确设置操作系统的主机名造成的,通过hostname得到的主机名称无法ping通时,oracle认为主机无法达到,所以启动数据库报错解决方法设置正确的hostname,并将hostname添加到/etc/hosts文件中ORA-00600[2262]故障现象警告日志中出现ora-00600[2262]错误: ThuOct2010:38:272005 Errorsinfile/opt/oracle/admin/conner/udump/conner_ora_31607.trc: ORA-00600:internalerrorcode,arguments:[2662],[0],[897694446],[0],[897695488],[8388697],[],[]原因分析在使用_ALLOW_RESETLOGS_CORRUPTION参数,并且以resetlogs方式打开数据库后,可能会遇到这个错误.解决方法方法一:通过多次重启数据库,观察是否还有此报错方法二:使用内部事件屏蔽:Altersessionsetevents=‘immediatetracenameADJUST_SCNlevel1’;备注:在使用_ALLOW_RESETLOGS_CORRUPTION参数,并且以resetlogs方式打开数据库后,如果数据库有很多异常现象,最好是将数据exp出来,然后重建库,再把数据imp进去,另外该种方法的恢复在经验丰富的DBA的指导下进行操作。ORA-00600[4194]故障现象数据库启动时,出现了ora-00600[4194]错误:SatJan2113:55:212006Errorsinfile/opt/oracle/admin/conner/bdump/conner_smon_17113.trc:ORA-00600:internalerrorcode,arguments:[4194],[43],[46],[],[],[],[],[]原因分析4194错误通常说明UNDO信息和REDO信息不匹配,表明undo数据文件出现了坏块。解决方法如果有数据库全备份,可以利用备份恢复的方法来恢复UNDO表空间如果没有备份,利用_corrupted_rollback_segments参数确定当前的回滚段的名称,可以从alert文件中获得SatJan2113:55:212006UndoSegment11OnlinedUndoSegment12OnlinedUndoSegment13OnlinedSuccessfullyonlinedUndoTablespace16.在AUM<autoundomanagement>下的回滚段名称为:'_SYSSMU11$','_SYSSMU12$','_SYSSMU13$用隐含参数_corrupted_rollback_segments,标记已损坏回滚段_corrupted_rollback_segments='_SYSSMU11$','_SYSSMU12$','_SYSSMU13$使用更改后的参数文件启动数据库startuppfile=‘xxxx’;数据库open后,创建新的undo表空间,将默认的UNDO表空间指向新的表空间,然后删除有问题的UNDO表空间,修改参数文件,去掉隐含参数,由参数文件生成新的spfile,重新启动数据库,具体步骤如下:createundotablespaceundotbs_newdatafile‘xxx’sizexxx;altersystemsetundo_tablespace=undotbs_new;droptablespaceundotbs_old;修改init参数文件,去掉_corrupted_rollback_segments隐含参数修改init参数文件,undo_tablespace=undotbs_new创建spfile:createspfilefrompfile=‘xxxxx’;shutdownimmediatestartupORA-00600[qerrmOFBu1]故障现象alertSID.log文件中偶尔出现下面的报错:MonMar3111:51:462008Errorsinfile/oracle/admin/icdb/udump/icdb_ora_741440.trc:ORA-00600:internalerrorcode,arguments:[qerrmOFBu1],[28],[],[],[],[],[],[]原因分析在使用dblink来查询或修改远端库的数据时,出现错误信息,如果远端的错误信息没有被远端库正常处理,那么在本地库就会以ora-00600[qerrmOFBU1]方式报错,上述第二个参数28,就是代表了在远端库发生了ora-00028<session被kill>的错误。解决方法如果导致远端错误的原因是正常的,比如用户终止操作或被DBA手工KILL,那么可以认为是正常情况该问题是oracle9201的bug,升级到9202以上即可解决ORA-00600[kccsbck_first]故障现象数据库从主机切换到备机,在备机上启动数据库报错: ORA-00600:in

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论