在客户数据库的alert日志中,发现了这个错误信息。
说是错误信息,但是并没有对应的错误号,应该算是消息信息:
Mon Dec 20 06:10:04 2010
datafilecopy header validation failure for file +FLHDG/clubstat2_idx.dbf
从错误信息的时间判断,应该是rman后台备份或执行delete obsolete命令时产生的。
这个信息比较少见,从字面上看,似乎是数据文件的备份存在错误。
检查rman的数据文件拷贝信息:
RMAN> list datafilecopy all;
using target database control file instead of recovery catalog
List of Datafile Copies
Key File S Completion Time Ckp SCN Ckp Time Name
------- ---- - --------------- ---------- --------------- ----
1 18 X 29-DEC-09 5040339738 29-DEC-09 +FLHDG/clubstat2_idx.dbf
查询数据字典信息:
SQL> select name from v$datafile
2 where name = '+FLHDG/clubstat2_idx.dbf';
NAME
------------------------------------------------------------------------------
+FLHDG/clubstat2_idx.dbf
SQL> select name from v$datafile_copy
2 where name like '+FLHDG%';
NAME
------------------------------------------------------------------------------
+FLHDG/clubstat2_idx.dbf
目前数据文件和数据文件备份的名称是一样的,看来问题不像字面描述的那么简单了,现在出现了字典不一致的现象。
查询了一下metalink,感觉问题和文档ID 460365.1描述的很相似。
解决方法就是通过change datafilecopy 1 uncatalog命令,注意这里1对应的从rman获取的datafile copy的key信息。
从控制文件中删除错误的datafile copy命令,从而避免在rman备份或删除obsolete对象的时候出现上述的错误。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-682631/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/4227/viewspace-682631/