乐趣区

关于数据库:ora00245报错解决方法

更多精彩内容:请登录 http://ke.sandata.com.cn/

1. 发现问题

最近应用备份软件对客户 11G RAC 数据库进行备份,发现备份失败查看日志发现数据库报 ORA-00245: control file backup failed; target is likely on a local file system 谬误。

2. 问题剖析

 本报错呈现于 oracle 11.2.0.1.0 及当前的版本中,利用于所有平台仅仅 RAC 环境会产生,因为 oracle 11Gr2 管制文件备份机制的扭转,集群中的任何实例都要能够写入快照文件。当然这个文件也就要对所有实例可见,所以这个快照文件要设置在共享设施上。

咱们当初看一下本机设置:


[oracle@rac1 ~]$ rman target /
Recovery Manager: Release 11.2.0.4.0 - Production on Mon Jun 21 10:56:57 2021
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
connected to target database: ORCL (DBID=1601183368)

RMAN> show all;
using target database control file instead of recovery catalog
RMAN configuration parameters for database with db_unique_name ORCL are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/product/11.2.0/db_1/dbs/snapcf_orcl1.f'; # default

由上可见本机是默认的未进行批改过。

3. 解决办法

批改 rman 备份配置,将管制文件快照定向到共享磁盘组,只需在一个节点批改即可。


RMAN> CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+DATA/ORCL/snapcf_orcl1.f';

new RMAN configuration parameters:
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+DATA/ORCL/snapcf_orcl1.f';
new RMAN configuration parameters are successfully stored

查看批改后的 rman 选项:


RMAN> show all    
2> ;
RMAN configuration parameters for database with db_unique_name ORCL are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+DATA/ORCL/snapcf_orcl1.f';

问题解决,再次运行备份软件能够失常顺利备份。

4. 知识点

快照管制文件的作用

管制文件在数据库的运行过程中时刻都在发生变化,rman 备份须要依赖于管制文件和复原目录。
也就是说在整个 rman 备份的过程中,管制文件中的检查点信息,SCN 信息和记录的文件构造信息这些不能扭转,一旦扭转那么数据的一致性就无奈被保障,那么这个备份也就失去了意义。如果将管制文件锁定的确保障了数据库从备份开始到完结数据的一致性然而在锁定期间数据库便无奈失常进行操作,这样的代价一样很大。所以为了解决这个问题快照管制文件应运而生,给备份开始时的管制文件做一个快照,整个备份过程都应用快照管制文件进行备份和同步操作。
快照管制文件是 RMAN 在零碎指定地位生成的以后管制文件的一个正本。RMAN 在备份或同步操作期间对理论的管制文件进行一个短暂的锁定,并依据管制文件内容生成或者刷新快照管制文件,当这个动作实现后 rman 就切换到应用快照管制文件进行备份和同步。保障了 rman 备份和同步的过程中应用的管制文件是不变的。

退出移动版