如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!

诗檀软件专业数据库修复团队

服务热线 : 13764045638 QQ号:47079569 邮箱:service@parnassusdata.com

ORA-01167
oerr ora 1167
01167, 00000, "two files are the same file/group number or the same file"
// *Cause: There is an overlap of file numbers in the files specified on
//        the command line or the same file is specified twice. If they are
//        not the exact same file then one is likely to be a backup of the
//        other. If they are two members of the same log they must be specified
//        together in a group file spec.  This message will also appear if
//        the same control file appears more than once in the control_files
//        parameter in the init.ora file.  If this happens, check for
//        additional error messages.
// *Action: Confirm that the file mentioned is not a repeat of a file already
//       mentioned in the command. If they are different files then omit the
//       earlier backup. If they are members of the same log, insure they are
//       in the same group file specification.  If this message appears because
//       of a duplicate control file, check the control_files parameter in the
//       init.ora file and see if a file is specified more than once.
//       If all files names appear to be unique, check to make sure that the
//       actual control files themselves are unique.  For example, in UNIX
//       check for a symbolic or a hard link to another control file in the list.

症状   当尝试使用数据库的操作系统副本创建一个新的控制文件时,收到错误:   CREATE CONTROLFILE set DATABASE hhr2 RESETLOGS  NOARCHIVELOG   ERROR at line 1: ORA-01503: CREATE CONTROLFILE failed ORA-01167: two files are the same file/group number or the same file ORA-01110: data file 504: '/oravol60/dbloc/oravol53/hhp2_data_ework_a' ORA-01110: data file 504: '/oravol59/dbloc/oravol54/hhr2/hhp2_data_xxxl_04c'     原因   在ORA-1110 错误中提到的两个数据文件有重复文件号,这是无效的情况。     解决方案   在源数据库上创建控制文件的二进制备份:   alter database backup controlfile to '<new controlfile filename>';   将新的备份控制文件复制到新的服务器,然后将在错误中列出的两个文件分类。 在新服务器上,mount新的备份控制文件,然后:   RMAN> catalog datafilecopy  '/oravol60/dbloc/oravol53/hhp2_data_ework_a'; RMAN> catalog datafilecopy '/oravol59/dbloc/oravol54/hhr2/hhp2_data_xxxl_04c';   然后我们可以列出数据文件的副本:   RMAN> list copy of database;   使用目标数据库控制文件代替恢复目录   数据文件副本的列表 键     文件  S 完成时间    Ckp SCN    Ckp Time        Name -------   ----   -  ---------------   ----------    ---------------       ---- 286    504  A  21-DEC-2007  33162314637 26-JAN-2007 /oravol59/dbloc/oravol54/hhr2/hhp2_data_xxxl_04c 285     504  A 21-DEC-2007     9683156967 29-NOV-2004 /oravol60/dbloc/oravol53/hhp2_data_ework_a   一个数据文件是29-NOV-2004 oravol60/dbloc/oravol53/hhp2_data_ework_a 还有一个是 26-JAN-2007 /oravol59/dbloc/oravol54/hhr2/hhp2_data_xxxl_04c   这是无效的情况,每个数据文件都需要有自己的文件号。   在将数据库从源数据库重新复制到新服务器后,创建控制文件成功,数据文件显示从2004的检查点,因此数据文件504肯定在之前的复制时损坏。