暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ORA-245: 在RAC环境从11.2开始快照controlfile需要存放在共享存储上 (文档 ID 2504967.1)

不加糖 2025-02-14
42

适用于:

Oracle Database Backup Service - 版本 N/A 和更高版本

Oracle Database Cloud Schema Service - 版本 N/A 和更高版本

Oracle Database Exadata Cloud Machine - 版本 N/A 和更高版本

Oracle Cloud Infrastructure - Database Service - 版本 N/A 和更高版本

Oracle Database Cloud Exadata Service - 版本 N/A 和更高版本

本文档所含信息适用于所有平台

从11gR2开始,controlfile备份时不再持有controlfile enqueue。对于非RAC数据库,这个改变没有任何影响。但是对于RAC数据库,由于11gR2中controlfile备份机制的改变,集群中任何实例都可能写snapshot controlfile。因此snapshot controlfile需要被所有实例可见。


Snapshot controlfile必须可被RAC数据库中所有的节点访问,如果snapshot controlfile不放置于共享设备,那么RMAN备份阶段产生snapshot controlfile时就会报错。


这适用于当使用sqlplus备份控制文件或者controlfile自动备份配置在非共享存储的场景。


ORA-245错误消息描述


00245, 00000, "control file backup operation failed"

*Cause: Failed to create a control file backup because some process

signaled an error during backup creation.

*Action: Check alert files for further information. This usually happens

because some process could not access the backup file during

backup creation. Any process of any instance that starts a

read/write control file transaction must have an access to the

backup control file during backup creation.

说明

1. 在RAC环境控制文件自动备份发生ora-245错误

Autobackup of controlfile in RMAN is failing 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. 在RAC环境,备份控制文件到非共享存储失败

SQL> ALTER DATABASE BACKUP CONTROLFILE TO '/path/control.bk' REUSE

*

ERROR at line 1:

ORA-245: control file backup operation failed

3. 在RAC 环境备份standby controlfile到非共享存储失败

SQL> alter database create standby controlfile as '/path/renostdbycntrl.ctl';

alter database create standby controlfile as

'/path/renostdbycntrl.ctl'

*

ERROR at line 1:

ORA-245: control file backup operation failed

4. 在RAC环境拷贝当前controlfile到'${DB_BACKUP_DIR}/rac_tnctv_control.bak';

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

5. 在RAC环境,若snapshot 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

6. 在RAC环境,没有RMAN活动,但是controlfile自动备份由于数据库结构变化而创建。比如,增加数据文件或者可自动扩展的数据文件大小调整。Alert.log中显示:

2016-12-30 23:46:10.244000 +00:00

Errors in file /path/db_name_m000_24118.trc:

ORA-19624: operation failed, retry possible

ORA-19504: failed to create file "/path/c-3364950485-20161230-00.cf"

ORA-27040: file create error, unable to create file

SVR4 Error: 2: No such file or directory

Additional information: 1

 

发生条件

只影响Real application Cluster (RAC),11.2以上。

症状

在RAC环境,如果snapshot controlfile不在共享存储上,任何形式的控制文件备份都可能由于ORA-0245错误而失败。Controlfile的备份实际上产生一个SNAPSHOT Controlfile 的备份。Snapshot controlfile在controlfile即将被备份时创建。Snapshot controlfile是一个controlfile的read-consistent拷贝。

注意:当备份位置不是共享存储时也可能引发另一个错误,参考

RMAN BACKUP TO LOCAL DEVICE WITH SNAPSHOT ON SHARED FAILS ORA-00245 (Doc ID 1516654.1)

根据bug 18073805(关闭为’not a bug’),当文件的位置不是共享存储时,"alter database backup controlfile to <file>" 也可能导致ORA-00227错误。

 

规避方法

解决方案:

这是一个RAC特有的配置问题,正确的配置如下:

需要RAC环境中的snapshot controlfile在一个共享的存储上

1. 检查snapshot controlfile的位置: 

RMAN> show snapshot controlfile name;

2. 配置snapshot controlfile到一个共享存储: 

RMAN> CONFIGURE SNAPSHOT CONTROLFILE NAME TO '<shared_disk>/snapcf_<DBNAME>.f';

或者如果使用了ASM

RMAN> CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+<DiskGroup>/snapcf_<DBNAME>.f';

补丁

 NA

历史记录

 02-07-2012 created and Published alert

07-12-2015 updated

参考


BUG:16012614 - ORA-245 ON RMAN CONTROLFILE BACKUP ON LOCAL DEVICE WITH SNAPSHOT ON SHARED

BUG:10263733 - SNAPSHOT CONTROLFILE USED BY RMAN MUST RESIDE ON SHARED DEVICE FOR RAC DATABASE

BUG:10252378 - CONTROLFILE AUTOBACKUP FAILS WITH ORA-00245: CONTROL FILE BACKUP OPERATION FAILE

BUG:12311429 - ALTER DATABASE BACKUP CONTROLFILE FAILS WITH ORA-245


NOTE:1516654.1 - RMAN BACKUP TO LOCAL DEVICE WITH SNAPSHOT ON SHARED FAILS ORA-00245

BUG:17824928 - ORA-00245 ERROR RMAN BACKUP WITH SNAPSHOT ON SHARED FAILS

BUG:18073805 - ORA-227: CORRUPT BLOCK DETECTED IN CONTROL FILE

BUG:13085539 - ORA-245 OCCURS DURING RMAN COPY CORRENT CONTROLFILE.

BUG:13780443 - CONTROLFILE BACKUP MUST RESIDE ON SHARED DEVICE WITH RAC DATABASE

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论