警告:ORA-01033:ORACLE initialization or shoutdown in progress 
在PL/SQL中scott/tiger 以normal权限登录出现的报错信息。
用sql plus也会出现此信息  请问如何解决?

解决方案 »

  1.   

    一、首先:问题的产生原因,出现这个错误是因为我将oracle\oradata\oradb下的一个文件误删除掉后出现的。二、现象:SQL*Plus无法连接,显示以下错误: ORA-01033: ORACLE initialization or shutdown in progress ,Enterprise Manager Console中也是同样的错误。三、分析:应该是Oracle在启动后,用户登录时是要将方案中原有配置信息装载进入,装载过程中遇到原有文件指定的位置上没有找到,所以就报出错误。
      

  2.   

    解决过程:1、我在解决时由于着急使用,便用Database Configuration Assistant工具重新创建了一个新的库,临时解决急用的问题,同时也给后期解决ora-01033问题埋下了隐患。
    2、在9i中是没有svrmgrl 命令的,要用sqlplus。
    3、先在windows下运行cmd,进入DOS环境。
    4、以DBA用户登录,具体命令是
    sqlplus /NOLOG
    SQL>connect sys/change_on_install as sysdba
    提示:已成功SQL>shutdown normal
    提示:数据库已经关闭
    已经卸载数据库
    ORACLE 例程已经关闭SQL>startup mount
    提示:ORACLE例程已经启动
    Total System Global Area 118255568 bytes
    Fixed Size                  282576 bytes
    Variable Size             82886080 bytes
    Database Buffers          33554432 bytes
    Redo Buffers                532480 bytes
    数据库装载完毕SQL>alter database open;
    提示:
    第 1 行出现错误:
    ORA-01157: 无法标识/锁定数据文件 19 - 请参阅 DBWR 跟踪文件
    ORA-01110: 数据文件 19: ''''C:\oracle\oradata\oradb\FYGL.ORA''
    这个提示文件部分根据每个人不同情况有点差别。继续输入
    SQL>alter database datafile 19 offline drop;
    提示:数据库已更改。循环使用最后两步,直到alter database open;后不再提示错误,出现“数据库已更改”。
    然后接着输入即可
    SQL>shutdown normal
    提示:数据库已经关闭
    已经卸载数据库
    ORACLE 例程已经关闭SQL>startup
    提示:ORACLE例程已经启动
    Total System Global Area 118255568 bytes
    Fixed Size                  282576 bytes
    Variable Size             82886080 bytes
    Database Buffers          33554432 bytes
    Redo Buffers                532480 bytes
    数据库装载完毕
    就可以解决了。
    5、最后说一下,第一条提到的隐患,因为创建了新的库,ORACLE_SID也就发生了变化,在用户登录的时候会有ORA-12560错误,解决这个问题是将系统注册表中的HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0\ORACLE_SID
    键值修改成之前那个SID就可以了,用户也能就能正常登录了。