Oracle某个数据文件损坏,如何打开数据库








某个数据文件损坏,如何打开数据库?



  • 系统环境:
    • 1、操作系统:Windows 2000 Server,机器内存128M
      2、数据库: Oracle 8i R2 (8.1.6) for NT 企业版
      3、安装路径:C:/ORACLE


  • 错误现象:
    • 因误操作,数据库中某一数据文件被误删,
      控制面板的Oracle相关服务显示已启动,但用SQL*Plus无法连接,
      显示以下错误
      ORA-01033: ORACLE initialization or shutdown in progress


  • 模拟现象:
           
           

    • create tablespace test datafile
      'c:/test.ora' size 5M
      AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED
      default storage (initial 128K next 1M pctincrease 0)
      /

      关闭所有服务stop.bat

      net stop "OracleWebAssistant0"
      net stop "OracleOraHome81TNSListener"
      net stop "OracleServiceORADB"

      shutdown

      在操作系统中删除test.ora文件

      重新启动服务start.bat

      net start "OracleWebAssistant0"
      net start "OracleOraHome81TNSListener"
      net start "OracleServiceORADB"

      服务里OracleServiceORADB显示已启动,但用SQL*Plus无法连接,
      显示ORA-01033: ORACLE initialization or shutdown in progress


      解决方法:

      先让该数据文件脱机,就可以打开数据库
      C:/>svrmgrl
      svrmgrl>connect internal
      svrmgrl>shutdown
      svrmgrl>startup mount

      --ARCHIVELOG模式命令,文件名要大写
      svrmgrl>alter database datafile 'C:/TEST.ORA' offline;

      --NOARCHIVELOG模式命令
      svrmgrl>alter database datafile 'C:/TEST.ORA' offline drop;

      svrmgrl>alter database open;


      --查询数据文件联、脱机状态
      SQL> select file#,name,status from v$datafile;

      SQL> drop tablespace test;

      表空间已丢弃。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值