某個數據文件損壞,如何打開數據庫(for windows)
2024-07-21 02:39:26
供稿:網友
系統環境:
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;
表空間已丟棄。