升级过程中出现ORA-205错误

在升级过程中,重启数据库出现了ORA-205错误。

 

 

在升级过程中,出现了错误,打算利用备份恢复后,重新执行升级过程。

结果恢复完成后,仍然报错,错误如下:

[oracle@bjtest ~]$ sqlplus "/ as sysdba"

SQL*Plus: Release 9.2.0.4.0 - Production on 星期五 4 30 18:42:19 2010

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.


连接到:
Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production

SQL> shutdown abort
ORACLE
例程已经关闭。
SQL> exit
Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production
中断开

[oracle@bjtest ~]$ sqlplus "/ as sysdba"

SQL*Plus: Release 9.2.0.4.0 - Production on 星期五 4 30 18:44:06 2010

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

已连接到空闲例程。

SQL> startup pfile=inittest9.ora
ORACLE
例程已经启动。

Total System Global Area  657246184 bytes
Fixed Size                   743400 bytes
Variable Size             385875968 bytes
Database Buffers          268435456 bytes
Redo Buffers                2191360 bytes
ORA-00205: ?????????????????????

关闭数据库后,对数据文件进行了恢复,然后重新启动数据库,却碰到了这个ORA-205的错误。

Oracle9i文档上描述的ORA-205错误:

ORA-00205 error in identifying controlfile, check alert log for more info
Cause: The system could not find a control file of the specified name and size.
Action: One of the following:
Check that the proper control file name is referenced in the CONTROL_FILES initialization parameter in the initialization parameter file and try again.
When using mirrored control files, that is, more than one control file is referenced in the initialization parameter file, remove the control file name listed in the message from the initialization parameter file and restart the instance. If the message does not recur, remove the problem control file from the initialization parameter file and create another copy of the control file with a new file name in the initialization parameter file.

问题显然和文档上的描述没有关系。仔细检查了初始化中的设置,已经控制文件的路径,没有发现问题。

关闭数据库后,再次执行了恢复的过程,打开数据库,错误依旧。

检查了备份和恢复的过程,也没有发现任何的问题。

感觉有点奇怪,查询了一下ORACLEMETALINK,找到了问题的原因,在升级过程中,如果出现了错误,很可能会在不同的ORACLE_HOME目录下启动多个数据库,详细文档描述可以参考:ID 808625.1

检查当前的环境:

[oracle@bjtest test9]$ ps -ef|grep test9
oracle   30422     1  0 18:36 ?        00:00:00 ora_pmon_test9
oracle   30424     1  0 18:36 ?        00:00:00 ora_dbw0_test9
oracle   30426     1  0 18:36 ?        00:00:00 ora_dbw1_test9
oracle   30428     1  0 18:36 ?        00:00:00 ora_lgwr_test9
oracle   30430     1  0 18:36 ?        00:00:00 ora_ckpt_test9
oracle   30432     1  0 18:36 ?        00:00:00 ora_smon_test9
oracle   30434     1  0 18:36 ?        00:00:00 ora_reco_test9
oracle   30529     1  0 18:44 ?        00:00:00 ora_pmon_test9
oracle   30531     1  0 18:44 ?        00:00:00 ora_dbw0_test9
oracle   30533     1  0 18:44 ?        00:00:00 ora_dbw1_test9
oracle   30535     1  0 18:44 ?        00:00:00 ora_lgwr_test9
oracle   30537     1  0 18:44 ?        00:00:00 ora_ckpt_test9
oracle   30539     1  0 18:44 ?        00:00:00 ora_smon_test9
oracle   30541     1  0 18:44 ?        00:00:00 ora_reco_test9
oracle   30542 30526  0 18:44 ?        00:00:00 oracletest9 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle   30604 30013  0 18:58 pts/5    00:00:00 grep test9

所有的关键的后台进程都是重复的,关闭当前的数据库:

SQL> shutdown abort
ORACLE
例程已经关闭。

再次检查后台进程:

[oracle@bjtest test9]$ ps -ef|grep test9
oracle   30422     1  0 18:36 ?        00:00:00 ora_pmon_test9
oracle   30424     1  0 18:36 ?        00:00:00 ora_dbw0_test9
oracle   30426     1  0 18:36 ?        00:00:00 ora_dbw1_test9
oracle   30428     1  0 18:36 ?        00:00:00 ora_lgwr_test9
oracle   30430     1  0 18:36 ?        00:00:00 ora_ckpt_test9
oracle   30432     1  0 18:36 ?        00:00:00 ora_smon_test9
oracle   30434     1  0 18:36 ?        00:00:00 ora_reco_test9
oracle   30542 30526  0 18:44 ?        00:00:00 oracletest9 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle   30608 30013  0 18:59 pts/5    00:00:00 grep test9

发现进程仍然存在,看来就是这个问题引起的。

[oracle@bjtest test9]$ ps -ef|grep test9
oracle   30422     1  0 18:36 ?        00:00:00 ora_pmon_test9
oracle   30424     1  0 18:36 ?        00:00:00 ora_dbw0_test9
oracle   30426     1  0 18:36 ?        00:00:00 ora_dbw1_test9
oracle   30428     1  0 18:36 ?        00:00:00 ora_lgwr_test9
oracle   30430     1  0 18:36 ?        00:00:00 ora_ckpt_test9
oracle   30432     1  0 18:36 ?        00:00:00 ora_smon_test9
oracle   30434     1  0 18:36 ?        00:00:00 ora_reco_test9
oracle   30542 30526  0 18:44 ?        00:00:00 oracletest9 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle   30624 30013  0 19:00 pts/5    00:00:00 grep test9
[oracle@bjtest test9]$ kill -9 30422
[oracle@bjtest test9]$ kill -9 30424
[oracle@bjtest test9]$ kill -9 30426
[oracle@bjtest test9]$ kill -9 30428
[oracle@bjtest test9]$ kill -9 30430
[oracle@bjtest test9]$ kill -9 30432
-bash: kill: (30432) - No such process
[oracle@bjtest test9]$ ps -ef|grep test9
oracle   30542 30526  0 18:44 ?        00:00:00 oracletest9 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle   30643 30013  0 19:02 pts/5    00:00:00 grep test9

通过KILL杀掉对应的后台进程,然后尝试重新启动数据库:

SQL> startup pfile=inittest9.ora
ORACLE
例程已经启动。

Total System Global Area  657246184 bytes
Fixed Size                   743400 bytes
Variable Size             385875968 bytes
Database Buffers          268435456 bytes
Redo Buffers                2191360 bytes
数据库装载完毕。
数据库已经打开。
SQL>

问题解决。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-670544/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/4227/viewspace-670544/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值