Oracle 常见故障处理文档格式.docx

上传人:b****1 文档编号:4471241 上传时间:2023-05-03 格式:DOCX 页数:22 大小:26.15KB
下载 相关 举报
Oracle 常见故障处理文档格式.docx_第1页
第1页 / 共22页
Oracle 常见故障处理文档格式.docx_第2页
第2页 / 共22页
Oracle 常见故障处理文档格式.docx_第3页
第3页 / 共22页
Oracle 常见故障处理文档格式.docx_第4页
第4页 / 共22页
Oracle 常见故障处理文档格式.docx_第5页
第5页 / 共22页
Oracle 常见故障处理文档格式.docx_第6页
第6页 / 共22页
Oracle 常见故障处理文档格式.docx_第7页
第7页 / 共22页
Oracle 常见故障处理文档格式.docx_第8页
第8页 / 共22页
Oracle 常见故障处理文档格式.docx_第9页
第9页 / 共22页
Oracle 常见故障处理文档格式.docx_第10页
第10页 / 共22页
Oracle 常见故障处理文档格式.docx_第11页
第11页 / 共22页
Oracle 常见故障处理文档格式.docx_第12页
第12页 / 共22页
Oracle 常见故障处理文档格式.docx_第13页
第13页 / 共22页
Oracle 常见故障处理文档格式.docx_第14页
第14页 / 共22页
Oracle 常见故障处理文档格式.docx_第15页
第15页 / 共22页
Oracle 常见故障处理文档格式.docx_第16页
第16页 / 共22页
Oracle 常见故障处理文档格式.docx_第17页
第17页 / 共22页
Oracle 常见故障处理文档格式.docx_第18页
第18页 / 共22页
Oracle 常见故障处理文档格式.docx_第19页
第19页 / 共22页
Oracle 常见故障处理文档格式.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Oracle 常见故障处理文档格式.docx

《Oracle 常见故障处理文档格式.docx》由会员分享,可在线阅读,更多相关《Oracle 常见故障处理文档格式.docx(22页珍藏版)》请在冰点文库上搜索。

Oracle 常见故障处理文档格式.docx

23ORACLE客户端在P4上安装不成功

24由于LISTENER.ORA或TNSNAMES.ORA配置问题导致网络问题

25由于环境变量设置问题导致VERSOIN版本启动问题

26用户数据、表破坏下的数据恢复

27由于OS层问题导致数据库ORA-600错误

故障分类三将导致数据库安装失败或打补丁失败的情况

28由于环境变量或没有安装MAKE文件导致数据库安装失败

29由于/TMP等文件系统设置太小导致数据库无法正常安装

30HPUX上由于核心参数设置不对导致数据库无法正常启动

31在64位的ORACLE817上打32的补丁失败

32由于安装备机数据库时是使用的拷贝方式,所以导致在备机上安装补丁失败

33由于安装ORACLE时错误地在$ORACLE_HOME目录下创建LINK,导致将打过补丁后的版本拷贝到备机失败

34ORACLE下的字符集问题

第二楼

第一种数据库挂起故障

1由于archive挂起导致数据库挂死

故障现象:

数据库挂起,sqlplus无法登录,alert_zxin.log中有如下信息报出:

SatJul1321:

48:

012002

ARC0:

Beginningtoarchivelog#1seq#61

Currentlog#2seq#62mem#0:

/zxindata/oracle/redolog/redo0log

Error19504creatingarchivelogfile'

/zxindata/zxinbak/arch/1_61.dbf'

Archivingnotpossible:

errorcountexceeded

Failedtoarchivelog#1seq#61

ARCH:

Archivalstopped,erroroccurred.Willcontinueretrying

ORACLEInstancezxin-ArchivalError

Connectingtoconsoleport...

ORA-16014:

log1sequence#61notarchived,noavailabledestinations

ORA-00312:

onlinelog1thread1:

'

/zxindata/oracle/redolog/redo01.log'

50:

372002

Noprimarydestinations

故障原因:

一般是archive所在的文件系统满或无操作权限引起的。

故障解决:

检查/zxindata/zxinbak文件系统,是否已经达到或接近100%,另外确定其对oracle用户有可写权限。

如果文件系统已经满,请执行

手工删除/zxindata/zxinbak/arch下的arch文件

使用sqlplus/nolog登录,执行:

SQL>

altersystemarchivelogstart;

进一步检查/zxindata/zxinbak文件系统为什么满:

查zxin10用户下的checkpsfs.shoracle任务有没有执行:

crontab–l|grepcheckpsfs,看是否有...checkpsfs.shoracle...的返回,如没有,表示定期检查空间是否满的任务没有执行,需要启动该任务

查zxin10用户对/zxindata/zxinbak/arch目录下文件有没有删除权限:

ls–l/zxindata/zxinbak/arch对dba组需要有可读可写权限

查数据库备份任务有没有正常执行:

crontab–l如果不存在rman或exp方式的数据库备份,则表示没有执行数据库备份任务,需要加上

是否是/zxindata/zxinbak文件系统太小,不符合备份和呼叫模型下的最小大小配置。

如果文件系统大小不能满足每天产生的arch日志和两个全备份的总空间,则需要扩展/zxindata/zxinbak文件系统,aix下可以直接扩,hpux下则需要将该文件系统umount以后再扩

2init文件中SGA区设置太大,导致内存不够用,数据库和系统都挂死

操作系统无法使用telnet或ftp登录,数据库挂起,sqlplus无法登录

只能通过维护台登录到主机(很有可能维护台也无法登录),如果可以登录,则在aix上使用lsps–a检查pagingspace是否使用超过50%,hpux下可使用vmstat看内存是否已经很少。

如不可以登录,则强制关电重起机器以触发主备双机倒换;

如果可以登录,则手工以shutdownabort方式停止数据库引发双机倒换。

然后调整initzxin.ora文件中SGA区大小,主要是减少db_block_buffers的配置,如果物理内存小于1G,建议该值配置为:

1024*1024/4/4

注意同时调整主备机配置,然后做双机倒换是配置生效。

数据库挂起,sqlplus无法登录,alert_zxin.log中看:

先是zxin_temp临时表空间扩展失败,数据库异常退出

这是ORACLE817的一个bug,当一个统计任务操作一个大表时,其临时数据使用了zxin_temp临时表空间,而该临时表空间太小自动扩展,扩展受文件系统大小限制和pctincrease参数限制而失败时,将引发数据库挂起。

将oracle817的补丁打到8.1.7.4

手工扩充zxin_temp表空间并增加其所在文件系统大小

检查zxin&

not;

_temp临时表空间的pctincrease的值,需要配置为0

数据库挂起,sqlplus无法登录。

由于原来使用rman备份方式,当这种故障发生时,数据库备份日志:

dbak.log中将有以下信息:

RMAN-03022:

compilingcommand:

backup

RMAN-03026:

errorrecoveryreleasingchannelresources

RMAN-08031:

releasedchannel:

ch1

RMAN-00571:

======================================================

RMAN-00569:

=========ERRORMESSAGESTACKFOLLOWS===============

====================================================

RMAN-03002:

failureduringcompilationofcommand

RMAN-03013:

commandtype:

RMAN-06003:

ORACLEerrorfromtargetdatabase:

RMAN-20242:

specificationdoesnotmatchanyarchivelogintherecoverycatalog

是ORACLE817的一个bug

将补丁打到oracle8.1.7.4就可以了。

另外建议将数据库备份改为exp方式

第三楼

第二种数据库功能/性能异常

操作系统CPU占有率很高,数据库操作响应很慢。

这种故障发生时,数据库能登录也能操作,但响应时间很长,从日志中也看不出什么异常。

所以只能使用我们定制的oratool工具,先找出CPU占有率高的语句,再进一步分析,当时的情况是,发现version对一个有blob类型的表写很频繁,耗去了大量CPU资源,导致数据库总体性能下降。

a.不建议使用blob类型的表

b.如果非要使用blob类型,则要定期进行数据备份和清理,记录数不能太多

c.对blob类型的表的操作,在记录数多的情况下不能写的太频繁,会占用大量的系统资源

执行某个存储过程或执行某个表的数据库操作时,操作系统CPU占有率明显升高,数据库操作响应很慢。

对一个数据量比较大的表(达到或超过100万),经过长期的读写操作后,其索引和数据分布没有及时更新给数据库,导致读时性能下降。

对这种类型的表,需要写任务定期对表做分析,由于分析比较耗时和耗资源,建议在系统闲时做,频率不能太高,如每月执行一次,分析可以使用5%或10%的抽样进行,如:

analyzetabletable1sampleestimatestatistics5percent;

alert_zxin.log日志将报扩展表空间失败的日志,zxcom.log中有扩展索引失败的记录。

一般是表所在的表空间不够,空间扩展失败的情况造成的。

手工扩展表空间所在的文件系统,扩展表空间

如果是表空间的pctincrease设置的不是0,则将其改为0

必要的时候需要rebuild一下扩展索引失败的索引

8由于redolog破坏导致数据库异常

如果是数据库启动情况下redolog被破坏,则alert_zxin.log中会报如下错误:

ORA-00313:

openfailedformembersofloggroup2ofthread1

onlinelog2thread1:

/zxindata/oracle/zxin/redo0log'

ORA-27037:

unabletoobtainfilestatus

将导致数据库操作异常。

sqlplus可以登录

如果是启动时候redolog损坏,将报:

无法打开日志组1(线程1)的成员

联机日志1线程1:

/zxindata/oracle/zxin/redo01.log'

redolog破坏,一般是由于:

人为误删或物理损坏

发生了主备倒换,备机的共享VG信息不全

如果未启动数据库,则启动到mount状态,重建日志:

(如第1组日志有问题)

alterdatabasedroplogfilegroup1;

alterdatabaseaddlogfilegroup1'

size250M;

alterdatabaseopen;

如果数据库启动着,则查看一下损坏文件是否是活动(active)的日志:

select*fromv$log;

如果是激活的,则进行日志切换:

altersystemswitchlogfile;

如果不是激活的,则执行重建:

将共享VG信息导入到备机,并修改共享文件系统和裸设备属性,使其对oracle用户具有读写权限

数据库操作将异常,sqlplus可以登录。

control文件被物理损坏或人为损坏。

一般会报:

ORA-00210/ORA-00202/ORA-27041/ORA-27037等错误,所以数据库事务将挂起

a.只要CONTROL_FILE中还有好的control文件,则只要

将其拷贝多份就可以了

b.如果以前做过备份,不能再使用该备份控制文件,因为control

文件和数据文件会不一致。

启动时报:

ORA-01589:

要打开数据库则必须使用RESETLOGS或NORESETLOGS

选项

alterdatabaseopenresetlogs;

ORA-01152:

文件1没有从完备的旧备份中恢复

ORA-01110:

数据文件1:

/zxindata/oracle/zxin/system01.dbf'

c.只要丢失了所有的备份或修改maxlogfiles或修改数据库名等情况则要重新

创建一个controlfile,方式如下:

startupmount

alterdatabasebackupcontrolfiletotrace;

到$udump目录下查看最新的文件中包含两份重建controlfile的语句,

其一是onlinelogs都完好的情况下进行数据库完全恢复的情况

其二是onlinelogs损坏,则所有的在线日志都将丢失,所有的备份

都将失效。

一般会导致操作到与该文件有关的数据都将失败,一般报:

ORA-01110/ORA-01116/ORA-27041等错误,严重一点的报ORA-03113后数据库异常退出

如果只是将数据文件挪了位置,则只要将其mv到原来的位置即可

如果确实损坏了,建议使用数据库备份进行恢复。

具体恢复时,可以尝试使用:

手工创建数据文件->

自动恢复模式,如果不行,只能使用表空间全部恢复方式了。

数据库表空间或索引扩展失败。

可能是表空间的storage参数设置的不合理引起的。

我们一般要求使用如下storage参数:

STORAGE(INITIAL20KNEXT20KMINEXTENTS1MAXEXTENTSUNLIMITEDPCTINCREASE0)

在zxcom.log报时间格式问题导致话单插入失败。

导致话单既要到bill文件中

跟zxin10用户的NLS_DATE_FORMAT参数设置不正确有关

需要将zxin10用户下.profile文件中NLS_DATE_FORMAT设置为:

NLS_DATE_FORMAT="

YYYY.MM.DDHH24:

MI:

SS"

大事务运行失败,表现为表空间用满(ORA-01560错误),回滚段扩展到达参数MAXEXTENTS的值(ORA-01628)。

回滚段设置的太小

由于一个事务只能使用一个回滚段来存放它的回滚信息,所以建议给大事务创建专用会滚段

创建时将回滚段表空间设置的大一点;

增加MAXEXTENTS的值。

使用ps–ef检查时有很多oracle进程(包含local关键字),使用内存检查命令看可用内存已经很少。

使用DEDICATED方式连接到数据库的客户端一般在服务器端都对应一个进程,该进程将消耗3~4M的内存空间。

如果客户端连接数比较多,则内存将耗尽,进程数也将达到系统极限或数据库极限。

增加系统的硬件配置,如增加CPU或扩内存

增加系统最大进程数限制,aix和hpux下都有方法设置

增加oracle进程数,在init文件中的processes参数项

使用MTS连接方式的数据库操作将比较慢,尤其是系统资源吃紧的情况下。

智能网前期对smap等客户端的策略是使用MTS(共享进程)解决方案,后发现该方案不可行,主要是该连接方式下的数据库操作性能太差。

共享进程只能支持更多的并发用户访问数据库,但不能提高执行速度,所以我们商用局中已经取消了这种方式。

具体可通过检查initzxin.ora中的配置确认。

应该不包含任何含mts关键字的配置

数据库性能下降,观察alert_zxin.log发现切换日志很频繁

肯定存在一个与呼叫无关的大事务在不停的运行,导致产生大量日志,引起日志切换。

使用oratool工具中的sp_who找出活动sql语句

通过命令找出消耗cpu、IO资源最大的10条语句

查出该语句操作的表的数据量和读写频率,检查是否有应用类逻辑性异常并给予纠正。

17由于没有commit,导致数据库表被锁住

操作某个表的记录时长时间无响应,通过sdf进行的数据库操作则表现为超时,导致sdf进程runtootoolong

一般跟该表被锁住有关

使用oratool工具中的sp_lock命令查看该表是否有锁

检查是否在某个SQL语句中对该表进行事务类操作时,没有使用commit,这种情况一般发生在手工通过sqlplus修改数据的场合,sdf不会出现

及时进行commit或rollback,解除表锁,如果不能解除的话,则将与该锁有关的进程强制杀掉。

表现为查询特别慢,如果是通过sdf操作,返回超时或触发:

sdfruntootoolong

有可能是在表的数据量比较大的情况下,该表的索引设置不合理造成的。

请使用explainplan查看其查询计划,看是否使用了全表扫描或不适合的索引,据此调整索引或查询语句。

19由于buffer参数设置不合理导致exp失败

使用exp导出某个表不成功

跟buffer设置有关

一般要求设置比较大的buffer进行exp备份,但当物理内存不够的情况下,buffer设置要合理,这种情况下,可尝试不设置buffer进行备份

20由于exp不向上兼容,语言不兼容,导致不同版本、不同字符集的数据库无法导入

进行imp导入时报数据格式不正确,数据导入失败

目前了解816/817数据库导出的格式不兼容,但oracle9i可以向下兼容,导出和导入环境的字符集不一致,也不能完成导入,但字符集一致、版本一致的数据库在不同的OS平台上可以互导。

保证数据库版本的一致性,保证字符集的一致。

或使用其他工具。

无法修改该表空间及在该表空间上创建的所有对象的storage参数。

只有在‘字典中管理’的表空间才可以设置手工设置STORAGE参数

编辑initzxin.ora,修改参数compatible=”8.1.0”修改成compatible=”8.1.6”,

执行:

$sqlplussys/change_on_install

sql>

execdbms_space_admin.Tablespace_Migrate_FROM_Local(‘ZXIN_BILL’);

commit;

exit

c.这样,表空间就从‘本地管理’修改成DMT数据字典管理方式了,然后再手工修改表空间存储参数和对象存储参数即可

系统表空间上存在着无关的数据文件

错误地在系统表空间上建了无关的数据文件

如果是创建在OEM_REPOSITORY表空间上,则可以将该表空间删除后重建,注意不要再包含错建的数据文件

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2