[ORACLE-RMAN]rman备份报错ORA-00245解决

一、问题现象

rman备份日志告警如下:

ORA-00245: control file backup failed; in Oracle RAC, target might not be on shared storage

数据库环境:19C RAC

二、原理

rman备份机制

当RMAN需要备份当前控制文件或进行控制文件的自动备份时,它首先需要创建一个控制文件的快照,即 Snapshot Controlfile。这个快照保证了备份时控制文件数据的一致性和完整性。

开始备份后,RMAN需要这些信息在备份操作期间保持一致,也就是说RMAN需要一个读取一致的控制文件视图。除非RMAN在备份持续时间内锁定控制文件,否则数据库会不断更新控制文件,所以不可能。

锁定控制文件意味着数据库不能执行检查点操作和切换日志,或则不能产生新的归档日志,这些操作是不可能的。RMAN使用快照控制文件(snapshot controlfile)来解决前面提出的问题,快照控制文件是控制文件的副本。RMAN只在备份和同步操作期间使用快照控制文件。

这些操作开始时,RMAN会根据实际控制文件来刷新快照控制文件,这样会短暂的锁住控制文件,随后,RMAN 会切换到快照并在备份持续使用这个快照。

这种方式具有读取一致性,且不妨碍数据库活动。在默认情况下,快照控制文件位于UNIX 平台上的ORACLE_HOME/dbs 目录中,或者是在windows 的ORACLE_HOME/database 目录下。

三、问题原因

在RAC环境中,所有节点都必须能够访问并更新这个Snapshot Controlfile。如果该文件位于某个节点的本地文件系统上,其他节点将无法访问它,从而导致备份任务失败,并抛出ORA-00245错误。

四、解决过程

解决方案

将Snapshot Controlfile的路径配置到所有RAC节点都能读写的共享存储上。对于使用Oracle ASM的环境,最佳选择就是ASM磁盘组。

操作步骤

1.连接RMAN:在任意一个RAC节点上,以具有SYSDBA权限的用户连接到目标数据库。

2.修改快照路径为共享磁盘

CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+DATA/<dbname>/snapcf_<dbname>.f';

3.show all

确认配置更改成功

相关推荐
杨云龙UP22 分钟前
TDengine 3.4.2.8 Community 三节点三副本生产集群部署实战(DNode/MNode/taosAdapter/Explorer)
大数据·linux·运维·数据库·tdengine·时序库
梦帮科技44 分钟前
领域认知知识库图谱注入:从双式记账图网络到高质量问答对自动化合成流水线
运维·网络·数据库·人工智能·矩阵·架构·自动化
Long long ago.44 分钟前
vastbase数据库运行sql宕机重启解决
数据库·sql
SelectDB技术团队1 小时前
一条日志两套引擎的账:把 Elasticsearch 检索与分析合并到同一份数据的落地写法
大数据·数据库·elasticsearch·搜索引擎·全文检索·日志·apache doris
数据库百宝箱1 小时前
rum&gin索引对比
java·数据库·gin
wefg12 小时前
【Redis】初识 Redis
数据库·redis·缓存
hacker_LeeFei4 小时前
Windows 下配置 Redis 8.10.2 开机自启:一次踩坑全记录
数据库·windows·redis
这个DBA有点耶5 小时前
MySQL字符集与排序规则深入:索引失效的隐蔽场景与排查方法
数据库·mysql·代码规范
zl_dfq5 小时前
Redis 之 【持久化 与 事务】
数据库·redis
闲云自留地6 小时前
从下载到登录:MySQL 在两大系统上的完整安装教程
数据库·mysql