数据库

本类阅读TOP10

·SQL语句导入导出大全
·SQL Server日期计算
·SQL语句导入导出大全
·SQL to Excel 的应用
·Oracle中password file的作用及说明
·MS SQLServer OLEDB分布式事务无法启动的一般解决方案
·sqlserver2000数据库置疑的解决方法
·一个比较实用的大数据量分页存储过程
·如何在正运行 SQL Server 7.0 的服务器之间传输登录和密码
·SQL中两台服务器间使用连接服务器

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
Oracle某个数据文件损坏,如何打开数据库

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站








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



  • 系统环境:
      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;

      表空间已丢弃。



相关文章

相关软件