一、问题描述: 某研发数据库(oracle 11.2.0.4 ,单实例),需要在测试环境中将生产库的备份,恢复到2016-07-14 0点,用rman恢复出13号晚上的备份后,利用归档来作基于时间点的不完全恢复到14号0点时,出现前面几个归档能正常,但recover到1_115944_814035104.dbf文件recover时报ORA-01152和ORA-01110错误。
经重启实例后,再次recover,报错依然存在,如下所示:
SQL> RECOVER database until time '2016-07-14 00:00:00' using backup controlfile;
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01152: file 1 was not restored from a sufficiently old backup
ORA-01110: data file 1: '/pdm/pdmsitdata/system01.dbf'
二、问题分析: 由于在recover归档前,是重建控制文件来启动db到mount状态,检查重建控制文件脚本中是否有漏掉数据文
件,确认控制文件脚本正常;
上面报错显示不能从一个老的备份中恢复file 1,说明恢复的目标位置(恢复时间点14号0点)与数据文件实际
的scn不匹配,就是说实际数据文件备份的时间点比恢复的目标时间点还要新。
如何确认这个问题,我们可以从两方面确认:
1.查看数据文件的最大scn对应的时间点