1. 问题描述
搭建19c adg环境,restore database 完成,recover database时报错RMAN-06094 数据文件需要restore。
dg备库alert日志中报WARNING,MUST_RENAME_THIS_DATAFILE,需重命名数据文件。
WARNING: The converted filename '+DATA/11gdb/datafile/system.275.1043745635'
is an ASM fully qualified filename.
Changing the filename to '+DATA/MUST_RENAME_THIS_DATAFILE_1.4294967295.4294967295'.
Please rename it accordingly.
2. 问题分析
2.1 数据文件
v$datafile中记录控制文件中数据文件信息,多个数据文件显示MUST_RENAME_THIS_DATAFILE,大部分数据文件路径显示正常。ASM磁盘组中这些MUST_RENAME_THIS_DATAFILE文件不存在,但是搜索例如 ls system存在对应文件。
v$datafile_header中记录实际数据文件头部信息,显示MUST_RENAME_THIS_DATAFILE的这些FILE#对应实际文件路径为空,说明这部分文件路径没有转换成功。
select file#,name from v$datafile;
select file#,name from v$datafile_header;
主库开启Oracle Managed Files (OMF),Oracle 会自动管理数据库文件的命名和位置,手动创建的文件名称,例如data01.dbf 均路径转换成功。OMF自动创建的文件名,例如system.275.1043745635,均为创建成功。
2.2 数据文件修复步骤
2.2.1 查询MUST_RENAME实际数据文件路径
MUST_RENAME_THIS_DATAFILE对应真实数据文件路径
RMAN> list copy of database;
2.2.2 catalog逐个注册实际数据文件路径
RMAN> catalog datafilecopy 'full path filename';
2.2.3 switch datafile to copy
RMAN> switch datafile 1 to copy;
或
RMAN> switch datafile 1,2,3,4 to copy;
2.2.4 检查数据文件是否转换成功
数据文件大小和名字正确
RMAN> report schema;
File Size(MB) Tablespace RB segs Datafile Name
---- -------- ----------------- ------- ------------------------
1 500 SYSTEM *** <ASM PATH>/system.423.756840583
2 200 UNDOTBS1 *** <ASM PATH>/undotbs1.258.667475049
3 350 SYSAUX *** <ASM PATH>/sysaux.257.756996199
4 545 USERS *** <ASM PATH>/users.259.756996261
不存在name为空的数据文件
select file#,name from v$datafile_header where name is null;
继续recover database 追归档操作,及open数据库,启动mrp进程。
如果所有数据文件或者单独目录中均未转换成功:
RMAN> CATALOG START WITH '+DATA/<db_unqiue_name>/datafile/'; (注册整个目录)
RMAN> SWITCH DATABASE TO COPY;(转换所有数据文件)
2.3 tempfile和onlinelog修复
tempfile临时表空间文件无需处理,open数据库会自动重建临时文件
onlinelog和standbylog可以手动clear logfile (确认为备库)
alter database clear logfile group xx;
3. 总结建议
总结:
在主库使用OMF时,重建备库控制文件之后或者路径未转换成功,记录的数据文件路径会变为 MUST_RENAME_THIS_DATAFILE,此时无法使用alter database rename命令报错ORA-01523。
需要将备库的数据文件路径,catalog进控制文件,注册未转换成功的数据文件,进行switch datafile to copy操作。
参考MOS文档:
RMAN-06094 or RMAN-06571 During Recovery or Switch to Copy at Standby Site (Doc ID 1339439.1)
Steps to perform for Rolling forward a standby database using RMAN incremental backup when datafile is added to primary (Doc ID 1531031.1)
switch database to copy
未经允许不得转载:徐万新之路 » switch database to copy

徐万新之路

