Oracle 系统紧急故障处理(数据文件、日志文件以及表空间损坏的处理)
Oracle 物理结构故障的处理方法:
Oracle 物理结构故障是指构成数据库的各个物理文件损坏而导致的各种数据库故障。这些
故障可能是由于硬件故障造成的,也可能是人为误操作而引起。所以我们首先要判断问题
的起因,如果是硬件故障则首先要解决硬件问题。在无硬件问题的前提下我们才能按照下
面的处理方发来进一步处理。
控制文件损坏:
控制文件记录了关于 oracle 的重要配置信息,如数据库名、字符集名字、各个数据文件、
日志文件的位置等等信息。控制文件的损坏,会导致数据库异常关闭。一旦缺少控制文件
数据库也无法启动,这是一种比较严重的错误。
可 以 通 过 查 询 数 据 库 的 日 志 文 件 来 定 位 损 坏 了 的 控 制 文 件 。 日 志 文 件 位 于
$ORACLE_BASE/admin/bdump/alert_ORCL.ora.
损坏单个控制文件:
1. 确保数据库已经关闭,如果没有用下面的命令来关闭数据库:
svrmgrl>shutdown immediate;
2. 查看初始化文件$ORACLE_BASE/admin/p'le/initORCL.ora,确定所有控制文件的路
径。
3. 用操作系统命令将其它正确的控制文件覆盖错误的控制文件。
4. 用下面的命令重新启动数据库
svrmgrl>startup;
5. 用适当的方法进行数据库全备份。
损坏所有的控制文件:
1. 确保数据库已经关闭,如果没有用下面的命令来关闭数据库:
svrmgrl>shutdown immediate;
2. 从相应的备份结果集中恢复最近的控制文件。对于没有采用带库备份的点可以直接从磁
带上将最近的控制文件备份恢复到相应目录;对于采用带库备份的点用相应的 rman 脚本
来恢复最近的控制文件。
3. 用下面的命令来创建产生数据库控制文件的脚本:
svrmgrl>startup mount;
svrmgrl>alter database backup control'le to trace noresetlogs;
4. 修改第三步产生的 trace 文件,将其中关于创建控制文件的一部分语句拷贝出来并做些
修 改 , 使 得 它 能 够 体 现 最 新 的 数 据 库 结 构 。 假 设 产 生 的 sql 文 件 名 字 为
createcontrol.sql.
注意:
Trace 文件的具体路径可以在执行完第 3)步操作后查看$ORACLE_BASE/admin/bdum
p/alert_ORCL.ora 文件来确定。
5. 用下面命令重新创建控制文件:
svrmgrl>shutdown abort;
svrmgrl>startup nomount;
svrmgrl>@createcontrol.sql;