Oracle数据库教程:ORA-01103错误解析(一)

2014-11-24 18:58:39 · 作者: · 浏览: 29

1、环境介绍:


这是一测试库,我将参数文件,控制文件,数据文件全部删除之后,做数据恢复,但是


我把控制文件和参数文件都恢复回来了,可数据库却怎么也打不开,报ORA-01103: database name 'WWL' in control file is not 'DUMMY'错误


我的数据库名称是:WWL


2、执行过程:


恢复参数文件:


RMAN> setDBID=5520179


executing command: SET DBID


RMAN> restorespfile from autobackup;


Starting restore at 23-MAY-12


using target database control file insteadof recovery catalog


allocated channel: ORA_DISK_1


channel ORA_DISK_1: sid=39 devtype=DISK



channel ORA_DISK_1: looking for autobackupon day: 20120523


channel ORA_DISK_1: autobackup found:c-5520179-20120523-04


channel ORA_DISK_1: SPFILE restore fromautobackup complete


Finished restore at 23-MAY-12


RMAN>



3、恢复控制文件


RMAN> restorecontrolfile from autobackup;



Starting restore at 23-MAY-12


using channel ORA_DISK_1



channel ORA_DISK_1: looking for autobackupon day: 20120523


channel ORA_DISK_1: autobackup found:c-5520179-20120523-04


channel ORA_DISK_1: control file restorefrom autobackup complete


output filename=/DBSoft/product/10.2.0/db_1/dbs/cntrlWWL.dbf


Finished restore at 23-MAY-12



RMAN>



4、报错信息:


RMAN> sql 'alterdatabase mount';


sql statement: alter database mount


RMAN-00571:===========================================================


RMAN-00569: =============== ERROR MESSAGESTACK FOLLOWS ===============


RMAN-00571:===========================================================


RMAN-03009: failure of sql command ondefault channel at 05/23/2012 18:51:31


RMAN-11003: failure during parse/executionof SQL statement: alter database mount


ORA-01103: database name 'WWL' in controlfile is not 'DUMMY'



RMAN> alterdatabase mount;


using target database control file insteadof recovery catalog


RMAN-00571:===========================================================


RMAN-00569: =============== ERROR MESSAGESTACK FOLLOWS ===============


RMAN-00571:===========================================================


RMAN-03002: failure of alter db command at05/23/2012 18:39:47


ORA-01103: database name 'WWL' in controlfile is not 'DUMMY'



SQL> alterdatabase mount;


alter database mount



ERROR at line 1:


ORA-01103: database name 'WWL' in controlfile is not 'DUMMY'



注意:问题是我恢复的控制文件没有错呀,在本机器上也没有部署过DUMMY的数据库呀,只有一个实例是WWL



查询实例信息,实例信息显示没有错呀是WWL


SQL> selectinstance_name,status from v$instance;



INSTANCE_NAME STATUS


---------------- ------------


WWL STARTED



SQL> alterdatabase mount; ----顺便执行了下mount database;


alter database mount


*


ERROR at line 1:


ORA-01103: database name 'WWL' in controlfile is not 'DUMMY'



奇怪的事发生了,现在再次登录到RMAM居然连接到的是DUMMY库:


问题是,我确定没有这个库呀,怎么办。。。



Recovery Manager: Release 10.2.0.1.0 -Production on Wed May 23 19:01:09 2012


Copyright (c) 1982, 2005, Oracle. All rights reserved.


connected to target database: DUMMY (notmounted)


RMAN> exit


我们刚才做了参数文件和控制文件的恢复,要不将数据库重启下,看有没有问题。


SQL> shutdownimmediate


ORA-01507: database not mounted


ORACLE instance shut down.


SQL> startupmount;


ORACLE instance started.


Total System Global Area 285212672 bytes


Fixed Size 1218968 bytes


Variable Size 79693416 bytes


Database Buffers 197132288 bytes


Redo Buffers 7168000 bytes


Database mounted.


再次登录正常。


[oracle@wwldb dbs]$rman target /


Recovery Manager: Release 10.2.0.1.0 -Production on Wed May 23 19:04:15 2012


Copyright (c) 1982, 2005, Oracle. All rights reserved.


connected to target database: WWL(DBID=5520179, not open)




B,每小时执行