Site icon IT Tutorial

ORA-19566: exceeded limit of 0 corrupt blocks for file during RMAN Backup

Hi,

Sometimes You can get ” ORA-19566: exceeded limit of 0 corrupt blocks for file  error ” during RMAN Backup .

 

Details of error are as follows.

RMAN-03009: failure of backup command on ORA_DISK_3 channel at 07/22/2020 18:54:19
ORA-19566: exceeded limit of 0 corrupt blocks for file +DATA/MSDB/datafile/test_data.658.962642173
RMAN-03009: failure of backup command on ORA_DISK_2 channel at 07/22/2020 18:22:32
ORA-19566: exceeded limit of 0 corrupt blocks for file +DATA/MSDB/datafile/test_data.325.21959565
RMAN-03009: failure of backup command on ORA_DISK_8 channel at 07/22/2020 18:43:24
ORA-19566: exceeded limit of 0 corrupt blocks for file +DATA/MSDB/datafile/test_data.873.423432475

 

 

 

This error is related with the Corrupted blocks on database. You can read the following post to learn more details about Block corruption.

 

ORA-01578: ORACLE data block corrupted (file # string, block # string) and How to Solve Block Corruption Error

 

Use DBV Tool and Performing an DBV on the above file shows a corrupt block.

dbv file=/<path>/<datafilename>.dbf blocksize=16384
DBVERIFY: Release 9.2.0.4.0 - Production on Thu Aug 30 18:06:59 2007

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

DBVERIFY - Verification starting : FILE = /<path>/<datafilename>.dbf


Page 91880 is influx - most likely media corrupt
***
Corrupt block relative dba: 0x048166e8 (file 18, block 91880)
Fractured block found during dbv:
Data in bad block -
 type: 0 format: 0 rdba: 0x00000000
 last change scn: 0x0000.00000000 seq: 0x0 flg: 0x00
 consistency value in tail: 0x00000001
 check value in block header: 0x0, block  checksum disabled
 spare1: 0x0, spare2: 0x0, spare3: 0x0
***

DBVERIFY - Verification complete

Total Pages Examined         : 128000
Total Pages Processed (Data) : 10475
Total Pages Failing   (Data) : 0
Total Pages Processed (Index): 1154
Total Pages Failing   (Index): 0
Total Pages Processed (Other): 645
Total Pages Processed (Seg)  : 0
Total Pages Failing   (Seg)  : 0
Total Pages Empty            : 115725
Total Pages Marked Corrupt   : 1
Total Pages Influx           : 1

 

You can use the following SQL statement is executed to determine that there is no segment associated

SELECT tablespace_name, segment_type, owner, segment_name
          FROM dba_extents
         WHERE file_id = 18
           and 91880 between block_id AND block_id + blocks - 1;

you can use the Block Media Recovery (BMR) method to repair the related blocks as follows.

BLOCKRECOVER DATAFILE 137 BLOCK 3464832;

BLOCKRECOVER DATAFILE 137 block 3844717 DATAFILE 38 block 1490618;

You can recover the related block from Disk or Tape backup as follows.

run
{
ALLOCATE CHANNEL CH1 TYPE 'DISK';
BLOCKRECOVER DATAFILE 92 BLOCK 20737;
RELEASE CHANNEL CH1;
}


run
{
ALLOCATE CHANNEL CH1 TYPE 'SBT_TAPE';
send 'NSR_ENV=(NSR_CLIENT=NSR_CLIENT_NAME,NSR_SERVER=NSR_SERVER_NAME) ';
BLOCKRECOVER DATAFILE 92 BLOCK 20737;
RELEASE CHANNEL CH1;
}

 

You can repair all physically corrupted blocks recorded in the view with the following command.

RMAN> RECOVER CORRUPTION LIST;

 

Now problem has been solved.

 

Do you want to learn more details about RMAN, then read the following articles.

https://ittutorial.org/rman-backup-restore-and-recovery-tutorials-for-beginners-in-the-oracle-database/

 

Exit mobile version