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

王朝other·作者佚名  2008-05-19
宽屏版  字体: |||超大  

系统环境:

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

svrmgrlconnect internal

svrmgrlshutdown

svrmgrlstartup mount

--ARCHIVELOG模式命令,文件名要大写

svrmgrlalter database datafile 'C:\TEST.ORA' offline;

--NOARCHIVELOG模式命令

svrmgrlalter database datafile 'C:\TEST.ORA' offline drop;

svrmgrlalter database open;

--查询数据文件联、脱机状态

SQL select file#,name,status from v$datafile;

SQL drop tablespace test;

表空间已丢弃。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有