日期:2014-05-16 浏览次数:20461 次
环境: Win2003 Enterprise Edition SP1
Oracle 9i
?IIS 6.0
问题描述: 用dba(hl330)用户登陆Oracle数据库时,登陆失败。 提示错误:ORA-01033:oracle initialization or shutdown in progress。
?
原因: 造成此ORA-01033的原因:某个数据文件出错,从而使oracle进程打不开此文件。(有可能是误除了数据文件,也有可能是数据文件太大(16G))。
?
查错步骤:
?1:怀疑文件被误删除,进入oracle数据文件夹(/dbsvr),查找后发现没有被误删除的文件(询问是否有人误删除Oracle文件,答案:否)。
?2:怀疑有大的数据文件(一般是undo文件和temp文件)。进入oracle的数据文件夹(/dbsvr),发现UNDOTBS01.DBF有16G。
?3:定位错误:UndoTbs表空间太大而引起Oracle例程再打开此文件时候时间超时,引起ora-011033.
?
?
解决步骤:
?
1:建立空UNDOTBS01.DBF文件。 将16G 的回退文件UNDOTBS01.DBF,拷贝到另个目录,然后在/dbsvr目录下新建立一个空的UNDOTBS01.DBF文件。 如果不执行这个操作,直接用sys登录会出现listerern监听超时提示,原因是打开UNdotbs01.dbf时间太长,所以此步骤是必需的。
?
2:用sys超级用户登陆oracle,
?
$sqlplus /nolog SQL> connect system/system as sysdba SQL> shutdown immediate SQL> startup nomount SQL> alter databse mount; SQL> alter database datafile 'E:\oracle\oradata\dbsvr\UNDOTBS01.DBF' offline drop; SQL>alter databse open; SQL>quit;
?