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

RMAN备份恢复典型案例——数据文件存在坏快

原创 Digital Observer 2025-02-13
94

作者:Digital Observer(施嘉伟)
Oracle ACE Pro: Database
PostgreSQL ACE Partner
11年数据库行业经验,现主要从事数据库服务工作
拥有Oracle OCM、DB2 10.1 Fundamentals、MySQL 8.0 OCP、WebLogic 12c OCA、KCP、PCTP、PCSD、PGCM、OCI、PolarDB技术专家、达梦师资认证、数据安全咨询高级等认证
ITPUB认证专家、PolarDB开源社区技术顾问、HaloDB技术顾问、TiDB社区技术布道师、青学会MOP技术社区专家顾问、国内某高校企业实践指导教师
公众号/墨天轮:Digital Observer;CSDN/PGfans:施嘉伟;ITPUB:sjw1933

1. 案例背景

有的时候生产数据文件存在坏快,直接rman备份过不去,那如何跳过坏快备份数据就显得尤为重要了。

2. 案例细节

备份含有坏快的数据文件时报错信息如下:

RMAN> backup datafile 5;
 
Starting backup at 26-APR-20
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00005 name=/u01/app/oracle/oradata/joe/datafile2/omf.dbf
channel ORA_DISK_1: starting piece 1 at 26-APR-20
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on ORA_DISK_1 channel at 04/26/2020 14:12:45
ORA-19566: exceeded limit of 0 corrupt blocks for file /u01/app/oracle/oradata/joe/datafile2/omf.dbf

处理过程如下,在备份时候指定最大允许坏快数量

RMAN> run {
2> SET MAXCORRUPT FOR DATAFILE '/u01/app/oracle/oradata/joe/datafile2/omf.dbf' TO 1;
3> backup datafile 5;}
 
executing command: SET MAX CORRUPT
 
Starting backup at 26-APR-20
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00005 name=/u01/app/oracle/oradata/joe/datafile2/omf.dbf
channel ORA_DISK_1: starting piece 1 at 26-APR-20
channel ORA_DISK_1: finished piece 1 at 26-APR-20
piece handle=/u01/app/oracle/product/11.2.0/dbhome_1/dbs/07uuk6kk_1_1 tag=TAG20200426T142003 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 26-APR-20

MAXCORRUPT参数简介:
设置数据库在指定数据文件或一组数据文件中允许的先前未检测到的块损坏的数量限制。默认限制为零,这意味着RMAN不容忍任何损坏的块。
该SET MAXCORRUPT命令指定备份作业期间数据文件中允许的物理和逻辑坏快的总数。如果为数据文件检测到的物理和逻辑坏快的总和不超过其MAXCORRUPT设置,则BACKUP命令完成。如果超出MAXCORRUPT存在多个损坏的块,则RMAN终止。
在发现坏块之后,备份或还原作业将终止,因此,RMAN仅记录损坏。超过备份作业终止点的任何块损坏都不会记录。
注意 如果指定CHECK LOGICAL,则MAXCORRUPT限制适用于检测到的逻辑和物理损坏的总和。否则,MAXCORRUPT仅适用于物理块损坏的数量。

3. 案例总结

如果发现数据文件存在坏块的现象,建议尽快确认此坏块所涉及的数据,作出相应的措施,尽快修复此问题。

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

评论