数据库升级问题―ORA-39700: database must be opened with UPGRADE option

1. 错误描述

一个数据较长时间未使用了,最近启动时出现如下错误:

SQL> startup

Oracle instance started.

Total System Global Area 4932501504 bytes

Fixed Size                  2103096 bytes

Variable Size            889194696 bytes

Database Buffers        4026531840 bytes

Redo Buffers              14671872 bytes

Database mounted.

ORA-01092: ORACLE instance terminated. Disconnection forced


2. 查看ORADIM.LOG (D:\oracle\product\10.2.0\db_1\database\oradim.log)

ORA-00704: bootstrap process failure

ORA-39700: database must be opened with UPGRADE option


3. 查看数据库版本为:10.2.0.5.0,应该是他们做过数据库的升级而没有执行这个脚本造成的

$ORACLE_HOME\rdbms\admin\catupgrd.sql;


4.linux下处理过程很简单

startup upgrade;

@$ORACLE_HOME\rdbms\admin\catupgrd.sql;

@$ORACLE_HOME/rdbms/admin/utlrp.sql;  --重新编译失效的object,跟这个问题本身关系不大

重启数据库

shutdwon immediate;

startup;

5、总结

分析原因为:数据库应该被人升级了,但是对应的实例没有升级,导致实例启动失败;

数据库升级(安装对应版本的补丁包)完后,还需要对实例进行升级(多个实例的话,需要一个一个的升级),实例的升级步骤就如上述的解决步骤了。

你可能感兴趣的:(Oracle升级,ORA-01092)