关于oracle-01033误删表空间文件解决方法
今天研究Oracle遇到了这个问题oracle-01033:oracle initialization or shutdown in progress,经过分析研究终于解决了
一、首先:问题的产生原因,出现这个错误是因为我将”C:\oradb\下的多个.dbf表空间文件误删除掉后出现的
二、现象:sql*plus无法连接,显示oracle-01033:oracle initialization or shutdown in progress
三、分析:应该是oracle在启动后,用户登录时是要将方案中原有配置信息装载进入,装载过程中遇到原有文件指定的位置上没有找到,所以就报出错误。
四、解决过程:
1、进入dos环境
2、以DBA用户登录,具体命令是
sqlplus/nolog
SQL> connect sys/change_on_install as sysdba
已连接。
SQL> shutdown normal
提示: 数据库未打开已经卸载数据库ORACLE 例程已经关闭。
SQL> startup mount
提示:ORACLE 例程已经启动。
Total System Global Area 1071333376 bytes
Fixed Size 1375792 bytes
Variable Size 763363792 bytes
Database Buffers 301989888 bytes
Redo Buffers 4603904 bytes
数据库装载完毕。
SQL> alter database open;
alter database open
*
第 1 行出现错误:
ORA-01157: 无法标识/锁定数据文件 8 - 请参阅 DBWR 跟踪文件
ORA-01110:数据文件 8: 'C:\ORADB\TS_TESTSYSTEM.DBF'(误删文件路径)
SQL>alter database datafile 'C:\ORADB\TS_TESTSYSTEM.DBF' offline drop;
数据库已更改。(恢复成功误删文件)
继续循环执行alter database open如下:
SQL> alter database open;
第 1 行出现错误:
ORA-01157: 无法标识/锁定数据文件 9 - 请参阅 DBWR 跟踪文件ORA-01110: 数据文件 9: 'C:\ORADB\HYMAN_DEV.DBF'
SQL> alter database datafile 'C:\ORADB\HYMAN_DEV.DBF' offline drop;
数据库已更改。
SQL> alter database open;
第 1 行出现错误:
ORA-01157: 无法标识/锁定数据文件 11 - 请参阅 DBWR 跟踪文件ORA-01110: 数据文件 11: 'C:\ORADB\DEMO.DBF'
SQL> alter database datafile 'C:\ORADB\DEMO.DBF' offline drop;
数据库已更改。
SQL> alter database open;
第 1 行出现错误:
ORA-01157: 无法标识/锁定数据文件 12 - 请参阅 DBWR 跟踪文件ORA-01110: 数据文件 12: 'C:\ORADB\PP.DBF'
SQL> alter database datafile 'C:\ORADB\PP.DBF' offline drop;
数据库已更改。
SQL> alter database open;
第 1 行出现错误:
ORA-01157: 无法标识/锁定数据文件 13 - 请参阅 DBWR 跟踪文件ORA-01110:数据文件 13: 'C:\ORADB\TS_TESTDATA.ORA'
SQL> alter database datafile 'C:\ORADB\TS_TESTDATA.ORA' offline drop;
数据库已更改。
直到alter database open;后不再提示错误,出现”数据库已更改”。如下:
SQL> alter database open;
数据库已更改。
然后继续往下操作如下:
SQL> shutdown normal
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 1071333376 bytes
Fixed Size 1375792 bytes
Variable Size 763363792 bytes
Database Buffers 301989888 bytes
Redo Buffers 4603904 bytes
数据库装载完毕。
数据库已经打开。
问题就解决了
以下是操作截图: