问题描述:巡检发现告警日志中报错ORA-00245,如下所示:
系统:centos 7.6 64位
数据库:oracle 11.2.0.4 64位
环境:rac 双节点
告警日志:
Sat Dec 31 04:57:04 2022
Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_ora_232036.trc:
ORA-00245: control file backup failed; target is likely on a local file system
异常原因:
此异常会出现在oracle 11.2.0.1.0及以后的版本中,所有平台仅rac环境会发生,因oracle 11g r2控制文件备份机制的改变,
集群中任何实例都要写入快照文件,所以此文件要对所有实例可见,进而此快照文件需要设置在共享存储中.
当前设置如下:
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;
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 ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_orcl1.f'; # default
说明:如上所示,快照控制文件设置在本地文件系统.
解决方案:
修改rman备份配置,将控制文件快照指定到共享磁盘组.(注意:只需在一个节点修改即可)
RMAN> CONFIGURE SNAPSHOT CONTROLFILE NAME TO ‘+DATADG/ORCL/snapcf_orcl1.f’;
相关知识:
快照控制文件作用:控制文件在数据库的运行过程中时刻都在变化,rman备份需要依赖于控制文件和恢复目录.
也就是说在整个rman备份的过程中,控制文件中的检查点信息,SCN信息和记录的文件结构信息不能改变,一旦改变那么数据的一致性就无法被保证,备份也就失去意义.
如果将控制文件锁定确实能保证数据库从备份开始到结束数据的一致性,但在锁定期间数据库无法正常进行操作,代价一样很大.
所以为了解决此问题快照控制文件应运而生,给备份开始时的控制文件做一个快照,整个备份过程都使用快照控制文件进行备份和同步操作.
快照控制文件是RMAN在系统指定位置生成的当前控制文件的一个副本.RMAN在备份或同步操作期间对实际的控制文件进行一个短暂的锁定,
并根据控制文件内容生成或刷新快照控制文件,当这个动作完成后rman就切换到快照控制文件进行备份和同步.保证了rman备份和同步的过程中使用的控制文件是不变的.
参考文档:https://blog.csdn.net/weixin_45694422/article/details/118145346
告警日志中报错ORA-00245
原创
©著作权归作者所有:来自51CTO博客作者Liujun_Deng的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
告警日志中报错ORA-07445 kkqstcrf
告警日志中报错ORA-07445 kkqstcrf
ORA-07445 kkqstcrf BUG 9050716 -
12c RMAN备份脚本,ORA-00245
12c RMAN备份脚本,ORA-00245
12c RMAN 备份脚本 -
数据库启动报错ORA-03113,告警日志出现ORA-16038、ORA-19809、ORA-19815报警
数据库启动报错ORA-03113,告警日志出现ORA-16038、ORA-19809、ORA-19815报警
ORA-16038 ORA-19809 ORA-19815 ORA-03113 -
ORA-09925 告警
ORA-09925 告警
oracle 数据库 sql -
ORA-00201 ORA-00202告警
ORA-00201 ORA-00202告警
oracle sql 数据库 -
java代码生成小程序参数码
如果是刚接触或者刚学习java,练习一些基础的算法还是必须的,可以提升思维和语法的使用。1、输出两个int数中的最大值 import java.util.Scanner; public class demo { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.
java代码生成小程序参数码 eprime经典程序案例 java 去两个数中最大值 java中scanner用法