Basic Concepts of Block Media Recovery

Basic Concepts of Block Media Recovery

Whenever block corruption has been automatically detected, you can perform block media recovery manually with the RECOVER ... BLOCK command. By default, RMAN first searches for good blocks in the real-time query physical standby database, then flashback logs and then blocks in full or level 0 incremental backups.

Identification of Corrupt Blocks

The V$DATABASE_BLOCK_CORRUPTION view displays blocks marked corrupt by database components such as RMAN, ANALYZE, dbv, and SQL queries.

The following types of corruption result in the addition of rows to this view:

Physical corruption (sometimes called media corruption) The database does not recognize the block: the checksum is invalid, the block contains all zeros, or the block header is corrupt. Physical corruption checking is enabled by default. You can turn off checksum checking by specifying the NOCHECKSUM option of the BACKUP command, but other physical consistency checks, such as checks of the block headers and footers, cannot be disabled.

Logical corruption:

The block has a valid checksum, the header and footer match, and so on, but the contents are logically inconsistent. Block media recovery may not be able to repair all logical block corruptions. In these cases, alternate recovery methods, such as tablespace point-in- time recovery, or dropping and re-creating the affected objects, may repair the corruption. Logical corruption checking is disabled by default. You can turn it on by specifying the CHECK LOGICAL option of the BACKUP, RESTORE, RECOVER, and VALIDATE commands.

The database can detect some corruptions by validating relationships between blocks and segments, but cannot detect them by a check of an individual block.

The V$DATABASE_BLOCK_CORRUPTION view does not record at this level of granularity.

Prerequisites for Block Media Recovery (link)

The following prerequisites apply to the RECOVER ... BLOCK command:

The target database must run in ARCHIVELOG mode and be open or mounted with a current control file.

If the target database is a standby database, then it must be in a consistent state, recovery cannot be in session, and the backup must be older than the corrupted file.

The backups of the data files containing the corrupt blocks must be full or level 0 backups and not proxy copies.

If only proxy copy backups exist, then you can restore them to a nondefault location on disk, in which case RMAN considers them data file copies and searches them for blocks during block media recovery.

RMAN can use only archived redo logs for the recovery. RMAN cannot use level 1 incremental backups. Block media recovery cannot survive a missing or inaccessible archived redo log, although it can sometimes survive missing redo records.

Flashback Database must be enabled on the target database for RMAN to search the flashback logs for good copies of corrupt blocks. If flashback logging is enabled and contains older, uncorrupted versions of the corrupt blocks, then RMAN can use these blocks, possibly speeding up the recovery. The target database must be associated with a real-time query physical standby database for RMAN to search the database for good copies of corrupt blocks.

Purpose of Block Media Recovery

You can use block media recovery to recover one or more corrupt data blocks within a data file. Block media recovery provides the following advantages over data file media recovery:

Lowers the mean time to recover (MTTR) because only blocks needing recovery are restored and recovered.

Enables affected data files to remain online during recovery

Without block media recovery, if even a single block is corrupt, then you must take the data file offline and restore a backup of the data file. You must apply all redo generated for the data file after the backup was created. The entire file is unavailable until media recovery completes. With block media recovery, only the blocks actually being recovered are unavailable during the recovery

Block media recovery is most useful for physical corruption problems that involve a small, well- known number of blocks. Block-level data loss usually results from intermittent, random I/O errors that do not cause widespread data loss, and memory corruptions that are written to disk. Block media recovery is not intended for cases where the extent of data loss or corruption is unknown and the entire data file requires recovery. In such cases, data file media recovery is the best solution.

时间: 2024-11-05 03:23:10

Basic Concepts of Block Media Recovery的相关文章

Block Media Recovery, BMR

ocp 053: 399.Which of the following is not an advantage of block media recovery (BMR)? A. Reduced MTTR. B. Datafiles remain offline while corrupt blocks are repaired. C. Datafiles remain online while corrupt blocks are repaired. D. A and C Answer: B

11G新特性 -- 块介质恢复性能增强(block media recovery)

块介质恢复性能增强(block media recovery) :只是恢复受损的块.不需要将受损的数据文件offline.针对受损的数据块,使用备份中好的数据块进行restore和recover,避免了对整个数据文件的restore和recover. 前提条件:必须开启闪回数据库功能. 在oracle 10g中,blockrecover命令可以执行块介质恢复.在oracle 11g中,新的命令recover ... block代替了blockrecover.recover ... block会在

Oracle非归档模式Media Recovery错误之--ORA-26040

Oracle非归档模式Media Recovery错误之--ORA-26040 系统环境: 操作系统:Linux RH55 Oracle:  Oracle 11gR2 模拟案例: 1.查看数据库模式 18:12:36 [email protected] prod>archive log list; Database log mode              No Archive Mode Automatic archival             Disabled Archive desti

Introduction and Basic concepts

1 Network Edge The device such as computers and mobiles connect to the Internet. So they are referred as end systems(who run the application programs) sitting at the edge of the Internet. And we use host and end system interchangeably, that is host=e

ORA-01153 an incompatible media recovery is active

ORA-01153错误处理 问题描述: 主备在做Switchover切换时,在切换后的备库报如下错误: ORA-01153: an incompatible media recovery is active 解决办法: 对standby database 进行手动应用archive log SQL> recover managed standby database cancel; SQL> recover automatic standby database ; SQL> RECOVER

ORA-01113: file xxxx needs media recovery

由于规范存储位置以及存储空间调整缘故需要移动表空间MRP_INDEX2的数据文件,如下所示,首先将表空间MRP_INDEX2脱机; 然后复制数据文件:接着重命名数据文件,最后将表空间MRP_INDEX2联机. 在操作过后,最后一步将表空间MRP_INDEX2联机上线时,出现了意外错误信息,如下所示: SQL> ALTER TABLESPACE MRP_INDEX2 OFFLINE NORMAL;   Tablespace altered.   SQL> !cp /u03/flash_recov

Performing User-Managed Database-18.7、Performing Complete User-Managed Media Recovery

18.7.Performing Complete User-Managed Media Recovery 完毕一致性备份,把数据库恢复到当前的scn是最好的结果.能够恢复整个数据库.恢复单个表空间.或恢复数据文件.一致性恢复不须要resetlogs打开数据库,非一致性恢复须要resetlogs打开数据库.Backup and Recovery Basics提供了关于介质恢复的信息. 18.7.1.Performing Closed Database Recovery 能够在一个操作中恢复全部损坏

ORA-00328 ORA-00334 MRP0: Background Media Recovery terminated with error 328

环境介绍:前几天搭建了一套 二节点单实例的 linux+oracle11.2.0.3+dataguard   maximize availability 的环境. 故障现象:今天发现不能同步了,在trace文件alert_orcl.log里发现有报错信息MRP进程启不来 MRP0: Background Media Recovery terminated with error 328 ORA-00328: 8386238 , 8972415ORA-00334: '/opt/oracle/fast

The basic knowledge of block

Block(1):基础知识 代码块对象,通常称为代码块,是对C语言中函数的扩展.它有一个更被大家熟知的名字:闭包(closure). 1.使用代码块 首先看一个下面方法的调用过程,该方法接受代码块作为参数: [aDictionary enumerateKeysAndObjectsUsingBlock:^(id key, id value, BOOL *stop) {     NSLog(@"value for key %@ is %@", key, value);     if ([@