• Java从入门到精通——调错篇之ORACLE 打开PLSQL时提示ora-01033


           客户Oracle服务器进入PL/SQL Developer时报ora-01033:oracle initializationg or shutdown in progress 错误提示,应用系统无法连接Oracle服务。经远程指导解决问题。过程如下:

    1、进入CMD,执行set ORACLE_SID=fbms,确保连接到正确的SID;

    2、运行sqlplus "/as sysdba"

          SQL>shutdown immediate      停止服务

         SQL>startup                          启动服务,观察启动时有无数据文件加载报错,并记住出错数据文件标号

         SQL>shutdown immediate      再次停止服务

         SQL>startup mount

         SQL> recover datafile 2         恢复出错的数据文件

         SQL>shutdown immediate      再次停止服务

         SQL>startup                          启动服务,此次正常。

    3、进入PL/SQL Developer检查,没有再提示错误。

         还启动不了,可能就是文件的问题。一般在CMD框中出现这几个代码错误oracle数据库启动报ORA-01122,ORA-01110,ORA-01203

            这是ORACLE 数据库空间裸设备出问题了,启动oracle失败,解决方法

      问题现象:

      启动ORACLE的时候报如下的错误:

      Database mounted.

      ORA-01122: database file 6 failed verification check

      ORA-01110: data file 6: '/dev/raw/rlv_cbs_user_dat'

      ORA-01203: wrong incarnation of this file - wrong creation SCN

      问题解决:      

      这个数据库空间有问题了,需要删除数据库空间,然后重新添加

      正确的步骤应该是这样去删除数据库空间的

      第一步,执行shutdown immediate命令先将数据库停止

      第二步,执行start mount 命令启动数据库

      第三步,将数据文件置为offline状态

      alter database datafile '/dev/raw/rlv_cbs_user_dat' offline drop;

      这里需要注意的是第三步的参数必须是offline drop;

      我一开始是这样写的,报错了

      alter database datafile '/dev/raw/rlv_cbs_user_dat' offline;   我执行这一句

      ERROR at line 1:

      ORA-01145: offline immediate disallowed unless media recovery enabled

      第四步,alter database open;

      第五步,drop tablespace cbs_user_dat ;

      第五步执行的时候又报了下面的错误

      ERROR at line 1:

      ORA-00604: error occurred at recursive SQL level 1

      ORA-02429: cannot drop index used for enforcement of unique/primary key

      通常情况下是删除这个cbs_user_dat这个表空间里的用户就可以了drop成功

      先查出这个数据库空间有哪些用户

      select username,DEFAULT_TABLESPACE from dba_users where DEFAULT_TABLESPACE='cbs_user_dat';

      我删除了用户还是报上面的错误

      下面查出在这个表空间里有哪些索引

      select OWNER,TABLESPACE_NAME,INDEX_NAME from dba_indexes  

           whereTABLESPACE_NAME='CBS_USER_DAT';

           这个时候可以删除索引,我删除索引的时候报错了

      我就直接把这个数据库用户给删了,尽管这个用户不是在CBS_USER_DAT里,这个时候再去删除表空间

      就可以删除成功了。

      表空间删除成功了之后就可以添加表空间了

    Meet so Meet. C plusplus I-PLUS....
  • 相关阅读:
    FirstAFNetWorking
    JSONModel 简单例子
    KVO
    KVC
    关于UITableView的性能优化(历上最全面的优化分析)
    浅拷贝和深拷贝
    UI2_异步下载
    UI2_同步下载
    算法图解学习笔记02:递归和栈
    算法图解学习笔记01:二分查找&大O表示法
  • 原文地址:https://www.cnblogs.com/iplus/p/4490419.html
Copyright © 2020-2023  润新知