Oracle DataGuard环境,恢复的DG备库发现要很久之前的归档。
而当前的归档都是4开头了
检查数据文件头SCN信息
select a.name,a.checkpoint_change# "start_SCN",
b.checkpoint_change# "last_SCN"
from v$datafile_header a, v$datafile b
where a.file#=b.file#;
NAME start_SCN last_SCN
--------------------------------------------- ---------- ----------
D:\CCDATA\NEWHIS\SYSTEM01.DBF 3295957260 3311098792
D:\CCDATA\NEWHIS\SYSAUX01.DBF 3295957262 3311098792
D:\CCDATA\NEWHIS\UNDOTBS01.DBF 3295957279 3311098792
D:\CCDATA\NEWHIS\USERS01.DBF 3295957260 3311098792
D:\CCDATA\NEWHIS\aaa.ORA 3295957262 3311098792
D:\CCDATA\NEWHIS\XX.ORA 3295957261 3311098792
D:\CCDATA\NEWHIS\ffff.ORA 3295957261 3311098792
D:\CCDATA\NEWHIS\dfg1.ORA 654876736 3311098792
D:\CCDATA\NEWHIS\eqerg.ORA 3295957261 3311098792
D:\CCDATA\NEWHIS\dfeg.ORA 3295957261 3311098792
D:\CCDATA\NEWHIS\dfwt.ORA 3295957279 3311098792
...
已选择20行。
检查发现D:\CCDATA\NEWHIS\dfg1.ORA文件数据文件头起始SCN不一致。解决方法是主库单独备份该数据文件,再到备库恢复。
主库备份:
rman target /
backup datafile 8 format 'd:\8.bak';
备份集拷贝:
将备份集拷贝到备库
备库注册备份集:
rman target /
catalog backuppiece 'd:\8.bak';
备库恢复数据文件:
rman target /
restore datafile 8;
备库查看数据文件头:
select a.name,a.checkpoint_change# "start_SCN",
b.checkpoint_change# "last_SCN"
from v$datafile_header a, v$datafile b
where a.file#=b.file#;
NAME start_SCN last_SCN
--------------------------------------------- ---------- ----------
D:\CCDATA\NEWHIS\SYSTEM01.DBF 3295957260 3311098792
D:\CCDATA\NEWHIS\SYSAUX01.DBF 3295957262 3311098792
D:\CCDATA\NEWHIS\UNDOTBS01.DBF 3295957279 3311098792
D:\CCDATA\NEWHIS\USERS01.DBF 3295957260 3311098792
D:\CCDATA\NEWHIS\aaa.ORA 3295957262 3311098792
D:\CCDATA\NEWHIS\XX.ORA 3295957261 3311098792
D:\CCDATA\NEWHIS\ffff.ORA 3295957261 3311098792
D:\CCDATA\NEWHIS\dfg1.ORA 3295957261 3311098792
D:\CCDATA\NEWHIS\eqerg.ORA 3295957261 3311098792
D:\CCDATA\NEWHIS\dfeg.ORA 3295957261 3311098792
D:\CCDATA\NEWHIS\dfwt.ORA 3295957279 3311098792