ora-00245错误本质是rac中snapshot控制文件未置于共享存储,必须配置为asm路径(如+data/dbname/snapcf_dbname.f),确保所有节点挂载且权限一致。

ORA-00245:控制文件快照路径不在共享存储
RAC环境下RMAN自动备份控制文件失败,90%是因为SNAPSHOT CONTROLFILE NAME指向本地路径(比如/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_orcl.f),而RAC所有实例必须能同时读写该文件。Oracle 11gR2起,快照控制文件不再仅由发起备份的节点独占,而是需被集群所有节点访问。
检查当前配置:RMAN> SHOW SNAPSHOT CONTROLFILE NAME;
如果路径是本地文件系统(非ASM或集群文件系统),就踩中了这个坑。
- 必须改到ASM共享路径,例如:
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+FRA/snapcf_<code>DB_NAME.f'; - 改完后无需重启实例,RMAN会自动同步到所有节点
- 验证方式:在两个RAC节点分别执行
SHOW SNAPSHOT CONTROLFILE NAME,结果应完全一致 - 注意:不能用
ALTER DATABASE BACKUP CONTROLFILE TO ...替代——那是手动备份,不解决自动备份失败问题
RMAN-06059 + ORA-19625:归档日志元数据与磁盘状态不一致
报错形如RMAN-06059: expected archived log not found + ORA-19625 + ORA-27037: No such file or directory,说明控制文件里还记着某个归档日志(比如SEQUENCE# 40137),但磁盘上早已不存在。这不是权限或空间问题,是元数据残留。
典型诱因包括:手动rm -rf清过log_archive_dest_1目录、NBU备份中断、RAC节点重建后未清理旧归档记录。
- 先运行:
CROSSCHECK ARCHIVELOG ALL;(耗时取决于归档数量,建议低峰期执行) - 再运行:
DELETE NOPROMPT EXPIRED ARCHIVELOG ALL;(只删控制文件里的“幽灵记录”,不碰真实归档) - 验证是否清干净:
LIST EXPIRED ARCHIVELOG ALL;应返回空 - 别跳过这步直接重跑
BACKUP PLUS ARCHIVELOG——RMAN仍会尝试读那些EXPIRED条目,再次报错
RMAN-03009 + ORA-19504:备份目标路径不可写
RMAN-03009本身只是通道失败的通用提示,真正原因藏在它后面紧跟着的ORA-错误里。如果看到ORA-19504: failed to create file '/backup/rman/xxx.bkp',问题出在操作系统层。
Oracle用户必须对目标路径有完整写入能力,且路径必须可访问、有空间、属主正确。
- 测试写权限:
sudo -u oracle touch /backup/test.$$ && rm /backup/test.$$ - 检查属主和权限:
ls -ld /backup→ 应为oracle:oinstall且含w位 - 查空间:
df -h /backup(注意不是df -i,inode耗尽也会触发此错) - 若用ASM,确认磁盘组在线且有余量:
SELECT NAME, STATE, USABLE_FILE_MB FROM V$ASM_DISKGROUP;
RMAN-06091:维护类命令没分配维护通道
执行DELETE OBSOLETE、CROSSCHECK或CHANGE时抛出RMAN-06091: maintenance channel not allocated,不是配置漏了,是作用域错了。
RMAN的维护通道(FOR MAINTENANCE)和备份通道(FOR BACKUP)互不兼容,也不能复用已分配的备份通道。
- 必须显式在
RUN块内声明:ALLOCATE CHANNEL FOR MAINTENANCE TYPE DISK; - 必须跟对应命令在同一个
RUN块里,不能跨块或单独执行 - 若用磁带设备,维护通道也得是
TYPE SBT_TAPE,否则仍报错 - 示例正确写法:
RUN { ALLOCATE CHANNEL FOR MAINTENANCE TYPE DISK; DELETE NOPROMPT OBSOLETE; RELEASE CHANNEL; }
实际排查时,RMAN日志要从最早一条ORA-或RMAN-错误往回翻——根因永远在最上面,而不是报错最后一行。尤其当涉及RAC、ASM、归档路径变更时,控制文件元数据同步滞后是高频盲点。











