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库:
问题是,我确定没有这个库呀,怎么办。。。
[Oracle@wwldb dbs]$rman target /
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)
这个问题我一兄弟在AIX,Linux,Windows 上分别做实验了,结果是在Windows下不用重启数据库,Rman就可以认到,而不会是DUMMY数据库。
B,每小时执行一次,整点执行
interval => 'trunc(sysdate,'HH')+1/24'
C,一个小时后执行
interval => 'sysdate+1/24'
更多Oracle相关信息见 专题页面