控制文件出问题了,尝试一下:
svrmgr>shutdown immediate
svrmgr>startup mount
svrmgr>recover database until cancel;
...
svrmgr>alter database openresetlogs;如果启动成功,要立即全部冷备份出来

解决方案 »

  1.   

    你先这样试一下:
    修改init.ora(C:\Oracle\admin\oradb\pfile\init.ora)文件,使无法使用的控制文件不在control_files参数中定义
    修改前
    control_files = ("C:\Oracle\oradata\oradb\control01.ctl", "C:\Oracle\oradata\oradb\control02.ctl", 
    "C:\Oracle\oradata\oradb\control03.ctl")修改后
    control_files = ("C:\Oracle\oradata\oradb\control01.ctl", "C:\Oracle\oradata\oradb\control02.ctl")
    注意先备份,否则后果自负!:)
      

  2.   

    先做冷备份再按上面的方法试下
    只有以个控制文件'D:\ORACLE\ORADATA\MYSID\CONTROL01.CTL'?
    那就难了
      

  3.   

    可以了,先做冷备份,把CONTROL01.CTL改名
     1。SVRMGRL
     2. SVRMGRL>CONNECT INTERNAL/ORACLE
     3. SVRMGRL> 4.SVRMGRL>STARTUP NOMOUNT
     5.SVRMGRL>CREATE CONTROLFILE REUSE DATABASE "ORACLE" NORESETLOGS NOARCHIVELOG
        MAXLOGFILES 32
        MAXLOGMEMBERS 2
        MAXDATAFILES 254
        MAXINSTANCES 1
        MAXLOGHISTORY 453
    LOGFILE
      GROUP 1 'D:\ORACLE\ORADATA\ORACLE\REDO01.LOG'  SIZE 1M,
      GROUP 2 'D:\ORACLE\ORADATA\ORACLE\REDO02.LOG'  SIZE 1M,
      GROUP 3 'D:\ORACLE\ORADATA\ORACLE\REDO03.LOG'  SIZE 1M
    DATAFILE
      'D:\ORACLE\ORADATA\ORACLE\SYSTEM01.DBF',
      'D:\ORACLE\ORADATA\ORACLE\RBS01.DBF',
      'D:\ORACLE\ORADATA\ORACLE\USERS01.DBF',
      'D:\ORACLE\ORADATA\ORACLE\TEMP01.DBF',
      'D:\ORACLE\ORADATA\ORACLE\TOOLS01.DBF',
      'D:\ORACLE\ORADATA\ORACLE\INDX01.DBF'   --这里要把所有的数据文件写完  
    CHARACTER SET US7ASCII
    ;
    重起数据库