一次失误

2007-04-30 

昨天早上去EM上查看数据库时,发现28号没有备份成功,然后看了下错误日志
run {
allocate channel oem_disk_backup device type disk;
recover
 


echo set on
 
 
channel oem_disk_backup: sid=208 devtype=DISK
using target database control file instead of recovery catalog
connected to target database: ORCL (DBID=1136783815)
allocated channel: oem_disk_backup
 
Starting recover at Apr 29 2007 22:05:14
recovering datafile copy fno=00007 name=/bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_bigtable_2r0hzpt4_.dbf
recovering datafile copy fno=00006 name=/bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_xqsms_2r0hxg4s_.dbf
recovering datafile copy fno=00005 name=/bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_example_2r0hzhn5_.dbf
recovering datafile copy fno=00004 name=/bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_users_2r0j14z1_.dbf
recovering datafile copy fno=00003 name=/bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_sysaux_2r0hz376_.dbf
recovering datafile copy fno=00002 name=/bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_undotbs1_2r0j123s_.dbf
recovering datafile copy fno=00001 name=/bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_system_2r0hy7dq_.dbf
channel oem_disk_backup: specifying datafile copies to recover
channel oem_disk_backup: starting incremental datafile backupset restore
recovering datafile copy fno=00008 name=/bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_bigtable_2r0hzxy7_.dbf
channel oem_disk_backup: reading from backup piece /data/localbackup/oracle/flash_recovery_area/ORCL/backupset/2007_04_28/o1_mf_
recovering datafile copy fno=00013 name=/data/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_perfstat_305m7zo6_.dbf
recovering datafile copy fno=00012 name=/bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_bigtable_2r0j0tp4_.dbf
recovering datafile copy fno=00011 name=/bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_bigtable_2r0j0mj4_.dbf
recovering datafile copy fno=00010 name=/bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_bigtable_2r0j0dc9_.dbf
recovering datafile copy fno=00009 name=/bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_bigtable_2r0j0546_.dbf
released channel: oem_disk_backup
 
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 04/29/2007 22:05:17
ORA-19870: error reading backup piece /data/localbackup/oracle/flash_recovery_area/ORCL/backupset/2007_04_28/o1_mf_nnnd1_TAG2007
ORA-19625: error identifying file /bak/localbackup/oracle/flash_recovery_area/ORCL/datafile/o1_mf_xqsms_2r0hxg4s_.dbf
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
 
 
exit;
 
Additional information: 3
RMAN-00571: ===========================================================

看到错误日志后,自己出了一身冷汗。。导致错误的原因是我把/bak下的所有目录删除了,因为之前几次备份方式的调整,datafile文件事实在/bak的子目录下,幸好那是我的datafilecopy文件,没有给正常业务造成什么影响,,在解决这个问题的过程自己走了好多弯路,主要是还对数据库的不了解造成,错误提示找不到原来的数据文件。。数据文件在物理已经删除了,但是数据库里还有,这样就造成了不一致,我通过把数据库里的datafile文件删除,解决了那个问题,可以正常进行定期备份了。

看来自己需要走的路还很长,幸好有多朋友。。。



评论暂缺

(Required)
(Required, will not be published)