最开始是报:
ALTER DATABASE   MOUNT
ORA-00210: cannot open the specified control file
ORA-00202: control file: '/opt/workshop/omu/database/control03.ctl'
错误,
按照如下操作搞了一下,mount是成功了
RMAN> shutdown immediate;
RMAN> startup nomount;
RMAN> restore controlfile from autobackup;
RMAN> sql 'Alter database mount';
但是alter database open;又报ORA-01589错误,接着按照提示执行resetlogs等还是不行:
SQL> startup mount;
ORA-01081: cannot start already-running ORACLE - shut it down first
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
SQL> alter database open NORESETLOGS;
alter database open NORESETLOGS
*
ERROR at line 1:
ORA-01610: recovery using the BACKUP CONTROLFILE option must be done
SQL> alter database open RESETLOGS;
alter database open RESETLOGS
*
ERROR at line 1:
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/opt/workshop/omu/database/system01.dbf'最后索性删掉所有控制文件重建,结果执行重建时又报了00600错误,急死人了。
SQL> CREATE CONTROLFILE REUSE DATABASE "OMU" RESETLOGS FORCE LOGGING ARCHIVELOG
  2    MAXLOGFILES 16
  3    MAXLOGMEMBERS 3
  4    MAXDATAFILES 100
  5    MAXINSTANCES 8
  6    MAXLOGHISTORY 584
  7  LOGFILE
  8    GROUP 1 '/opt/workshop/omu/database/redo01.log'  SIZE 50M,
  9    GROUP 2 '/opt/workshop/omu/database/redo02.log'  SIZE 50M,
 10    GROUP 3 '/opt/workshop/omu/database/redo03.log'  SIZE 50M
 11  -- STANDBY LOGFILE
 12  DATAFILE
 13    '/opt/workshop/omu/database/system01.dbf',
 14    '/opt/workshop/omu/database/sysaux01.dbf',
 15    '/opt/workshop/omu/database/undotbs01.dbf',
 16    '/opt/workshop/omu/database/users01.dbf',
 17    '/opt/workshop/omu/database/common.dbf',
 18    '/opt/workshop/omu/database/cgp_1.dbf',
 19    '/opt/workshop/omu/database/pds.dbf',
 20    '/opt/workshop/nes/ne63/workspace1/database/NETBS.dbf',
 21    '/opt/workshop/nes/ne83/workspace1/database/NETBS.dbf',
 22    '/opt/workshop/nes/ne64/workspace1/database/NETBS.dbf',
 23    '/opt/workshop/nes/ne84/workspace1/database/NETBS.dbf',
 24    '/opt/workshop/nes/ne66/workspace1/database/NETBS.dbf',
 25    '/opt/workshop/nes/ne86/workspace1/database/NETBS.dbf',
 26    '/opt/workshop/nes/ne65/workspace1/database/NETBS.dbf',
 27    '/opt/workshop/nes/ne85/workspace1/database/NETBS.dbf'
 28  CHARACTER SET ZHS16GBK
 29  ;
CREATE CONTROLFILE REUSE DATABASE "OMU" RESETLOGS FORCE LOGGING ARCHIVELOG
*
ERROR at line 1:
ORA-01503: CREATE CONTROLFILE failed
ORA-00600: internal error code, arguments: [krhcvt_filhdr_v10_01], [], [], [], [], [], [], []

解决方案 »

  1.   

    没有高手?
    看来要提到metlink上了。
      

  2.   

    最开始报3号控制文件坏了,直接把它踢出去,启动数据库后重建上就可以了
    你后来竟然把所有控制文件统统删除掉,再接着BS CSDN没高手,那大家还能说什么呢
    当然我不是高手,随便BS
      

  3.   


    嘿嘿,愤青倒是有啊。
    我BS谁了呢?只是看到帖子半天没人回,顶一下贴而已。不顶一下说不定现在小马哥也关注不到呢。开始并不知到怎样改启动参数将ctl3去掉,但在网上搜到有所有控制文件丢失后重建恢复的案例,于是就照着操作呗。出了问题当然再来问一下呗,何罪之有啊。不过最后问题解决了,现在共享两点经验给大家:

    当出现
    ORA-00210: cannot open the specified control file 
    ORA-00202: control file: '/opt/workshop/omu/database/control03.ctl'的时候
    应该尝试修改服务器启动参数control_files将/opt/workshop/omu/database/control03.ctl从其中剔除,如果有多个的话.
    startup nomount;
    create pfile from spfile;
    shutdown immediate;
    cd $ORACLE_HOME/dbs
    修改对应的pfile文件中的control_files参数.然后尝试用pfile启动数据库
    startup pfile='?/dbs/对应pfile的名字2 
    如果希望从备份中恢复的话,请记住如果恢复了控制文件,那么一定要恢复数据库.在rman中
    restore controlfile from 'controlfile备份地址';
    restore database;
    recover database;另:重建控制文件出现00600错误并没有解决,联系到一个oracle工程师,说可能是bug。
      

  4.   

    600 是内部错误 
    有点麻烦了。
    可以找METALINK
      

  5.   

    启动到nomount状态下创建控制文件;使用noarchivelog选项.
    然后直接恢复recover database
    最后打开即可alter database open;