刚刚装的oracle10g  没有任何数据  启动报错  
SQL> STARTUP
ORACLE instance started.Total System Global Area  281018368 bytes
Fixed Size     1218944 bytes
Variable Size    88082048 bytes
Database Buffers   184549376 bytes
Redo Buffers     7168000 bytes
ORA-00205: error in identifying control file, check alert log for more info
日志文件里面
ORA-00202: control file: '/opt/ora10/oradata/tmp/control01.ctl'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory查看/opt/ora10/oradata/tmp 文件夹 里面确实是没有文件

解决方案 »

  1.   

    你安装了oracle 10g,可能还没有安装实例,用dbca安装一个数据库实例。
      

  2.   

    找不到控制文件,怎么能启动数据库呢
    可以重新创建一个新的控制文件。
    如果还记得文件的位置的话SQL> CREATE CONTROLFILE REUSE DATABASE "ORA9" NORESETLOGS  NOARCHIVELOG
      2  --  SET STANDBY TO MAXIMIZE PERFORMANCE
      3      MAXLOGFILES 50
      4      MAXLOGMEMBERS 5
      5      MAXDATAFILES 100
      6      MAXINSTANCES 1
      7      MAXLOGHISTORY 226
      8  LOGFILE
      9    GROUP 1 'D:\ORACLE\ORADATA\ORA9\REDO01.LOG'  SIZE 100M,
     10    GROUP 2 'D:\ORACLE\ORADATA\ORA9\REDO02.LOG'  SIZE 100M,
     11    GROUP 3 'D:\ORACLE\ORADATA\ORA9\REDO03.LOG'  SIZE 100M
     12  -- STANDBY LOGFILE
     13  DATAFILE
     14    'D:\ORACLE\ORADATA\ORA9\SYSTEM01.DBF',
     15    'D:\ORACLE\ORADATA\ORA9\UNDOTBS01.DBF',
     16    'D:\ORACLE\ORADATA\ORA9\CWMLITE01.DBF',
     17    'D:\ORACLE\ORADATA\ORA9\DRSYS01.DBF',
     18    'D:\ORACLE\ORADATA\ORA9\EXAMPLE01.DBF',
     19    'D:\ORACLE\ORADATA\ORA9\INDX01.DBF',
     20    'D:\ORACLE\ORADATA\ORA9\ODM01.DBF',
     21    'D:\ORACLE\ORADATA\ORA9\TOOLS01.DBF',
     22    'D:\ORACLE\ORADATA\ORA9\USERS01.DBF',
     23    'D:\ORACLE\ORADATA\ORA9\XDB01.DBF',
     24    'D:\ORACLE\ORADATA\ORA9\TESTDUMP01.DBF'
     25  CHARACTER SET ZHS16GBK
     26  ;这个时候,还不如自己再创建一个新的数据库,来得快。
      

  3.   


    他新建控制文件都不行查看/opt/ora10/oradata/tmp 文件夹 里面确实是没有文件,这个是空目录,默认情况数据文件和联机日志文件都和 控制文件一个目录的,所以这里我估计是没有建数据库。 或者是建数据库没有成功。而且他这里的问题不仅仅是数据文件的问题,sid有问题,按这里来看sid是tmp,这是不对的,所以还要查sid的设置。 通过她的错误信息,nomount是成功的,在mount的时候才出错,这里的init也是用的默认的,而不是实例的,估计也找不到SPFILETMP.ora的文件最后的推断,用户的sid设置错了,或者是 数据实例根本没有安装。 
      

  4.   

    inthirties大哥推断得很有依据。
    赞。
    楼主执行dbca吧。
      

  5.   

    执行dbca后发现原来创建的数据库实例确实没有成功 删除后 重新创建  发现一直提示权限不够 
    用oracle 运行 dbca  提示oracle@ubuntu:~$ dbca
    DISPLAY not set.
    Set DISPLAY environment variable, then re-run.
      

  6.   

    设置 export DISPLAY=localhost:0.0 后再运行 dbca直接没有任何提示  就结束了 
      

  7.   

    为什么我用root 用户运行dbca 界面是出来了  到最后开始生成 数据库实例的时候却报权限不够
     我已经将root用户加进dba用户组里面了 
    后来用oracle用户运行dbca 却连图形化界面都没有出来 那位大虾出来帮帮忙阿
      

  8.   

    1、一般我们不用root用户去安装Oracle,而是建一个Oracle(具体名字根椐自己想法),然后将安装文件,安装位置的权限均改为Oracle用户可读可写
    2、Oracle用户运行不能启动dbca界面具体报什么错误可以贴出来吗
      

  9.   

    根据连接文档里面写的,DBCA对机器的显卡配置有要求,最少要256色的,看看显卡驱动,如果有问题是无法启动DBCA的。
    在DBCA里面我记得有个然你选择控制文件路径的地方。
    或者你手动创建,然后在SPFILESID.ora文件里面把控制文件的路径写进去。最好给使用ORACLE的用户单独建一个组。
    通常是建个组oracle 还有个组DBA 分组时用-g oracle -G DBA个人不成熟的建议,希望没有误导你。
      

  10.   

    补充点。
    我晚上自己把书库删除了,以前是用dbca创建的,准备手动创建,发现也是报找不到控制文件。我改了点东西。
    #env | grep ORACLE
    发现SID还是以前的SID,于是把SID改了。
    在$ORACLE_HOME/dbs目录下创建了一个pfile,initoracle.ora,里面就一句话db_name='oracle'。
    然后进入SQLPLUS
    #sqlplus /nolog
    SQL>conn / as sysdba
    SQL>create spfile from pfile
    SQL>startup nomount
    SQL>create database oracle
    创建数据库就OK了,再启动就没报找不到控制文件了。
    我看了ORALCE的连接文档,发现里面写了spfile的创建是可选的,但是如果没有创建
    spfile则无法回写控制文件。不知道你是不是这个原因。
    ORACLE 我也是刚起步...嘿嘿!