ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 单个控制文件损坏的解决方法

单个控制文件损坏的解决方法

原创 Linux操作系统 作者:paulyibinyi 时间:2008-02-29 08:50:28 0 删除 编辑

oracle 9i 默认控制文件为三个,控制文件记录数据库的创建时间,归档记录,和发生检查点时更新数据文件和控制文件时的scn,等等数据库重要信息,如果在运行过程中,有一个控制文件损坏,在系统要写控制文件时,就会down,三个控制文件

最好不要放在同一个目录下,放在不同硬盘下,做好镜象,这样一个损坏,就可以使用好的覆盖坏的即可,以下是测试例子

1. 用ULTRAEDIT工具 修改control02.ctl控制文件 模拟损坏
2. SQL> alter system checkpoint;   发生检查点,系统要更新数据文件头和控制文件
alter system checkpoint
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel


SQL> alter system switch logfile;
alter system switch logfile
*
ERROR at line 1:
ORA-03114: not connected to ORACLE

alert.log 记录如下:
Thu Feb 28 17:47:48 2008
Errors in file d:\oracle\admin\paul\bdump\paul_ckpt_2860.trc:
ORA-00211: controlfile does not match previous controlfiles
ORA-00202: controlfile: 'D:\ORACLE\ORADATA\PAUL\CONTROL02.CTL'

Thu Feb 28 17:47:48 2008
CKPT: terminating instance due to error 211
Thu Feb 28 17:47:51 2008
Errors in file d:\oracle\admin\paul\bdump\paul_pmon_3268.trc:
ORA-00211: controlfile does not match previous controlfiles

Thu Feb 28 17:48:06 2008
Instance terminated by CKPT, pid = 2860

3.把好的覆盖坏的,改名为坏的控制文件名即可

4.startup  database  正常

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7199859/viewspace-197119/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 周末在家 无聊
请登录后发表评论 登录
全部评论
学习数据库

注册时间:2007-12-11

  • 博文量
    902
  • 访问量
    6576530