Oracle 数据库系统紧急故障处理方法
Oracle 物理结构故障是指构成数据库的各个物理文件损坏而导致的各种数据库故障。这些
故障可能是由于硬件故障造成的, 也可能是人为误操作而引起。 所以我们首先要判断问题的
起因,如果是硬件故障则首先要解决硬件问题。 在无硬件问题的前提下我们才能按照下面的处理方发来进一步处理。
控制文件损坏:
控制文件记录了关于 oracle 的重要配置信息,如数据库名、字符集名字、各个数据文
件、日志文件的位置等等信息。 控制文件的损坏, 会导致数据库异常关闭。 一旦缺少控制文件,数据库也无法启动,这是一种比较严重的错误。
损坏单个控制文件:
1.确保数据库已经关闭,如果没有用下面的命令来关闭数据库:
svrmgrl>shutdown immediate;
2. 查看初始化文件 $ORACLE_BASE/admin/a,oracle10g程序异常终止 确定所有控制文件的路
径。
3.用操作系统命令将其它正确的控制文件覆盖错误的控制文件。
4.用下面的命令重新启动数据库:
svrmgrl>startup;
5.用适当的方法进行数据库全备份。损坏所有的控制文件:
1.确保数据库已经关闭,如果没有用下面的命令来关闭数据库:
svrmgrl>shutdown immediate;
2.从相应的备份结果集中恢复最近的控制文件。对于没有采用带库备份的点可以直接
从磁带上将最近的控制文件备份恢复到相应目录;对于采用带库备份的点用相应的 rman 脚
本来恢复最近的控制文件。
3.用下面的命令来创建产生数据库控制文件的脚本:
svrmgrl>startup mount;
svrmgrl>alter database backup controlfile to trace noresetlogs;
4.修改第三步产生的 trace 文件,将其中关于创建控制文件的一部分语句拷贝出来并
做些修改,使得它能够体现最新的数据库结构。假设产生的 sql 文件名字为
createcontrol.sql.
注意:
Trace 文件的具体路径可以在执行完第 3)步操作后查看 $ORACLE_BASE/admin/bdump/a 文件来确定。
5.用下面命令重新创建控制文件:
svrmgrl>shutdown abort;
svrmgrl>startup nomount;
svrmgrl>@createcontrol.sql;
6.用适当的方法进行数据库全备份。重做日志文件损坏:
数据库的所有增、删、改都会记录入重做日志。如果当前激活的重做日志文件损坏,会
导致数据库异常关闭。 非激活的重做日志最终也会因为日志切换变为激活的重做日志, 所以
损坏的非激活的重做日志最终也会导致数据库的异常终止。在 ipas/mSwitch 中每组重做日
志只有一个成员, 所以在下面的分析中只考虑重做日志组损坏的情况, 而不考虑单个重做日
志成员损坏的情况。
确定损坏的重做日志的位置及其状态:
1.如果数据库处于可用状态:
select * from v$logfile;
svrmgrl>select * from v$log;
2.如果数据库处于已经异常终止:
svrmlgr>startup mount;
svrmgrl>select * from v$logfile;
svrmgrl>select * from v$log;
其中,logfile 的状 INVALID 表示 日志文件出 已 坏; log 状 表示重做日志文件 于非激活状 ; Active : 表示重做日志文件 于激活状 ;
Inactive Current
:
:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论