Email: service@parnassusdata.com 7 x 24 online support!
Oracle 在时间点恢复成功后打开RESETLOGS显示 ORA-01177: 数据文件与字典不匹配 - 可能是旧的原型
如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!
诗檀软件专业数据库修复团队
服务热线 : 13764045638 QQ号:47079569 邮箱:service@parnassusdata.com
ORA-01177: 数据文件与字典不匹配 - 可能是旧的原型
ORA-01177 oerr ora 1177 01177, 00000, "data file does not match dictionary - probably old incarnation" // *Cause: When comparing the control file with the data dictionary after // a CREATE CONTROLFILE or OPEN RESETLOGS, it was noted that this // datafile was inconsistent with the dictionary. Most likely the // file is a backup of a file that was dropped from the database, // and the same file number was reused for a new file. It may also // be that an incomplete recovery stopped at a time when this file // number was used for another datafile. // *Action: Do a CREATE CONTROLFILE with the correct file or none at all.
适用于:
Oracle Server – Enterprise Edition – 版本 11.2.0.1 到 11.2.0.3 – Release: 11.2 到 11.2
本文信息适用于任何平台。
目标
在时间点还原和恢复成功后,在打开未被还原的数据文件的resetlogs时生成错误:
RMAN> run {
2> set until time “to_date(’22-MAR-2012 01:24:09′, ‘DD-MON-YYYY HH24:MI:SS’)”;
3> restore database;
4> recover database;
5> alter database open resetlogs;
6> }
…
channel ORA_SBT_TAPE_1: restoring datafile 00001 to D:\APP\ORACLE\ORADATA\ORCL\SY
STEM01.DBF
channel ORA_SBT_TAPE_1: restoring datafile 00002 to D:\APP\ORACLE\ORADATA\ORCL\SY
SAUX01.DBF
channel ORA_SBT_TAPE_1: restoring datafile 00004 to D:\APP\ORACLE\ORADATA\ORCL\PA
TROL_DATA01.DBF
channel ORA_SBT_TAPE_1: restoring datafile 00005 to D:\APP\ORACLE\ORADATA\ORCL\US
ERS01.DBF
channel ORA_SBT_TAPE_1: reading from backup piece db_bak_245_1_778554117
channel ORA_SBT_TAPE_1: piece handle=db_bak_245_1_778554117 tag=FULL_DB_BACKUP_T
O_BUR
channel ORA_SBT_TAPE_1: restored backup piece 1
channel ORA_SBT_TAPE_1: restore complete, elapsed time: 00:02:46
channel ORA_SBT_TAPE_1: starting datafile backup set restore
channel ORA_SBT_TAPE_1: specifying datafile(s) to restore from backup set
channel ORA_SBT_TAPE_1: restoring datafile 00003 to E:\APP\ORACLE\ORADATA\ORCL\UN
DOTBS01.DBF
channel ORA_SBT_TAPE_1: restoring datafile 00006 to D:\APP\ORACLE\ORADATA\ORCL\HP
OM_DATA01.DBF
channel ORA_SBT_TAPE_1: restoring datafile 00007 to D:\APP\ORACLE\ORADATA\ORCL\AU
…
archived log file name=F:\APP\ORACLE\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_03_
22\O1_MF_1_277_7PPC2842_.ARC RECID=191 STAMP=778585352
archived log file name=F:\APP\ORACLE\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_03_
22\O1_MF_1_278_7POTMOCJ_.ARC thread=1 sequence=278
media recovery complete, elapsed time: 00:00:00
Finished recover at 22-MAR-12
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00601: fatal error in recovery manager
RMAN-03004: fatal error during execution of command
ORA-03114: not connected to ORACLE
RMAN-03002: failure of alter db command at 03/22/2012 09:43:52
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-01177: data file does not match dictionary – probably old incarnation
ORA-01110: data file 9: ‘E:\APP\ORACLE\ORADATA\ORCL\USER_CONFIG_01.DBF’
Process ID: 2676
Session ID: 2740 Serial number: 10
ORACLE error from target database:
ORA-03114: not connected to ORACLE
解决方案
从还原操作中,我们未发现数据文件号 9
但当尝试打开时,错误在数据文件9上出现
这表示在选择时间 ’22-MAR-2012 01:24:09’时该数据文件不是数据库的一部分
由于数据文件在控制文件中被列出,生成了错误。
这表示在数据文件还原之前,控制文件未被还原。
要解决问题,还原控制文件:
RMAN> startup nomount
run {
set until time “to_date(’22-MAR-2012 01:24:09′, ‘DD-MON-YYYY HH24:MI:SS’)”;
restore controlfile from autobackup;
alter database mount;
restore database;
recover database;
alter database open resetlogs;
}