重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 821|回复: 0
打印 上一主题 下一主题

[Oracle] RMAN备份出现ORA-00245: control file backup failed;

[复制链接]
跳转到指定楼层
楼主
发表于 2024-5-16 10:02:30 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
rman备份报错:

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on c1 channel at 08/11/2016 06:01:37
ORA-00245: control file backup failed; target is likely on a local file system

原因:

在Rac中,所有节点都必须能够访问快照控制文件。如果快照控制文件没有放到共享设备上,当rman备份快照控制文件时,ORA-00245错误就会出现。
解决方法:

配置快照控制文件的位置为共享的:CONFIGURE SNAPSHOT CONTROLFILENAME TO '+<DiskGroup>/snapcf_<DBNAME>.f';

参考:

这个问题只存在Oracle 11gR2以后的RAC 环境。

ORA-245 触发条件
在以下的5种环境下,会出现ORA-00245的错误。

2.1 RAC 环境下,自动备份备份控制文件,会因为ORA-245的错误而失败

Autobackup of controlfile in RMAN isfailing with error:
RMAN-571: ===========================================================
RMAN-569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-571: ===========================================================
RMAN-3009: failure of Control File and SPFILE Autobackup command on
ORA_DISK_1 channel at 10/27/2010 12:13:31
ORA-245: control file backup operation failed

2.2 RAC 环境下,备份控制文件到非共享的本地路径,也会失败
SQL> ALTER DATABASE BACKUP CONTROLFILETO '/u01/backup/control.bk' REUSE
*
ERROR at line 1:
ORA-245: control file backup operation failed

2.3 在RAC 环境下,创建standby controlfile 到非共享的本地路径也会失败
SQL> alter database create standby controlfileas '/home/oracle/renostdbycntrl.ctl';
alter database create standby controlfileas
'/home/oracle/renostdbycntrl.ctl'
*
ERROR at line 1:
ORA-245: control file backup operation failed

2.4 在RAC 环境下,copy 当前的控制文件到本地路径
channel ch1: starting datafile copy
copying current control file
RMAN-571: ===========================================================
RMAN-569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-571: ===========================================================
RMAN-3009: failure of backup command on 10/07/2011 11:36:42 channel at ch1
ORA-245: control file backup operation failed


2.5 RAC 环境下,controlfile 快照备份到非共享位置,RMAN 备份也会失败
RMAN-00571:========================================================
RMAN-00569: ============ ERROR MESSAGE STACK FOLLOWS =============
RMAN-00571: =========================================================
RMAN-03009: failure of resync command on default channel at 03/13/2012 10:19:41
ORA-00245: control file backup operation failed

错误原因

From 11gR2onwards, the controlfile backup happens without holding the controlfileenqueue. For non-RAC database, this doesn't change anything. But for RACdatabase, due to the changes made to the controlfile backup mechanism in 11gR2,any instance in the cluster may write to the snapshot controlfile. Due to thissnapshot controlfile need to be visible to all instances.
    --从Oracle11gR2 开始,在备份控制文件时,不在需要锁住controlfile enqueue。对于非RAC 的数据库, 没有任何改变,但对于RAC 数据库,因为控制文件备份机制的改变,集群中的任何instance 可以需要写入到快照控制文件,因此snapshot controlfile需要对所有实例是可见的。

In RACenvironment any form of controlfile backup may fail with ORA-0245 if thelocation of the Snapshot Controlfile is not a shared location.
--在RAC 环境下,如果snapshot controlfile 不在共享的位置,控制文件任何形式的都可能报ORA-245的错误。

The backup ofthe controlfile actualy makes a backup of the SNAPSHOT controlfile. TheSnapshot controlfile is created when the controlfile is about to be backed up.
--控制文件的备份实际上是生成一个SNAPSHOT controlfile,在备份时生成快照文件。

The Snapshotcontrolfile is a read-consistent copy of the controlfile.
--快照控制文件是控制文件的一个read-consistent copy。

The snapshotcontrolfile MUST be accessible by all nodes of a RAC database, if the snapshotcontrolfile does not reside on a shared device error will be raised at the timeof RMAN backup while taking snapshot of controlfile.
--快照控制文件必须能被所有节点访问,如果快照控制不是存放在共享设备上,那么在RMAN 进行控制文件的快照备份时就会报错。

This applies to backingup controlfile using sqlplus / having autobackup of controlfileconfigured on non-shared location.


ORA-245 error message description
----------------------------------------
00245, 00000, "control file backup operation failed"
*Cause: Failed to create a control file backup because some process signaled anerror during backup creation.
*Action: Check alert files for further information. This usually happens becausesome process could not access the backup file during backup creation. Anyprocess of any instance that starts a read/write control file transaction musthave an access to the backup control file during backup creation.

解决方法

检查快照控制文件位置
RMAN> show snapshot controlfile name;

配置snapshot controlfile 到共享位置
RMAN> CONFIGURE SNAPSHOT CONTROLFILENAME TO '<shared_disk>/snapcf_<DBNAME>.f';

如果使用了ASM,就指定到对应的ASM disk group:
RMAN> CONFIGURE SNAPSHOT CONTROLFILENAME TO '+<DiskGroup>/snapcf_<DBNAME>.f';

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2024-11-25 04:01 , Processed in 0.099687 second(s), 21 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表