解决方案 »

  1.   

    日志是出现ora-1033时打开的吗
    在本地登录,看下实例状态
    sqlplus / as sysdba SELECT status,startup_time
    FROM v$instance;
      

  2.   


    我刚才先
    SQL> shutdown immediate
    ORA-01109: 数据库未打开已经卸载数据库。
    ORACLE 例程已经关闭。然后
    SQL> startup 
      ORA-01041: 内部错误, hostdef 扩展名不存在
    然后看了http://sunxitao88.blog.163.com/blog/static/68314439201152112921191/这个我coon sys/xxx@xxx as sysdbaora-12154无法解析指定的连接标识符我怀疑是不是服务名填错了?现在只有sys用户能登陆上,求问怎么查询到服务名?
      

  3.   

    Error: ORA 1041 
    Text: internal error. hostdef extension doesn't exist
    ---------------------------------------------------------
    Cause:   Pointer to hstdef extension in hstdef is null. 
    Action:  Likely a known or new bug. Explanation: This is usually reported when a connection has broken for some reason. Diagnosis: 1) Check the same operation for any ORA 3113 or ORA 3114 type errors. The ORA 1041 error usually results from an unexpected disconnection. 
    2) Follow the same steps as you would to progress an ORA 3113查下alert日志
      

  4.   


    C:\>sqlplus "/as sysdba"SQL> alter database open ; -- 回车后,看看报什么错, 贴上来。
      

  5.   

    日志损坏。恐怕是非正常关闭数据库或是电脑了。
    看看alert日志里有没有其他信息
    做个不完全恢复
    如果没有备份,数据也不重要,就重建吧
      

  6.   

    怎么alert日志?
    还有问下不完全恢复会把数据清理了么?
    顺便在问下如果重建的话要怎么重建
    纯小白。。
      

  7.   

    顶楼的第三个图不就是alert日志里截出来的吗
    不完全恢复需要备份,恐怕这里没有备份
    重建的话,原来的数据都会没掉
    用database configuration assistant删除现有现有数据库,再创建一个数据库,即可完成重建
      

  8.   

    startup mount;alter database clear unarchived logfile;alter database open;慎重操作
      

  9.   


    alter database clear unarchived logfile;会把数据给清光吗?
      

  10.   


    是小白,不知道怎么具体操作,现在这样我看的是http://www.linuxidc.com/Linux/2012-02/53426.htm这里的7、数据库被打开后,马上执行一个full export8、shutdown数据库,去掉_all_resetlogs_corrupt参数9、重建库10、import并完成恢复11、建议执行一下ANALYZE TABLE ...VALIDATE STRUCTURE CASCADE; 不知道什么意思。。哎,本来也不是干数据库的。。
      

  11.   

    你可以这么试试,从第4步开始
    关闭数据库,如果数据库是使用init file,则编辑该参数文件,加入一行,第5步的参数
    然后startup mount
    recover database until cancel; 
    再 alter database open resetlogs;
    看看能不能打开
    如果能打开,将需要的表做个exp导出来
      

  12.   

    不完全恢复需要先前做过rman备份,这种情况下只会丢失坏掉的那个日志里的数据。没有备份只能找其他办法,否则数据全丢
      

  13.   

    不是的。可以在mount状态下查看该日志的时间范围
    到底有没有备份,没有的话就别想这么多了
      

  14.   


    呃。。懂了,没有备份。。目前把oradata冷备份了下,然后不知道要不要进行不完全恢复了。