Block recovery

RMAN> run {
blockrecover corruption list;
backup validate datafile 23,25,26;
2> 3> 4>
Starting blockrecover at 27-JUN-08
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of blockrecover command at 06/27/2008 12:27:29
RMAN-05009: Block Media Recovery requires Enterprise Edition
I dont have enterprise edition. Is there any other way to fix the corrupted blocks.

What do you mean by saying that "when I tried to start the backup" when you had already recovered?
If you want to skip the corrupted blocks,you can do the same with DBMS_REPAIR package.You haven't mentioned your db's version so I am posting the link from 8i which I am assuming the minimum version you wouldbe using.
http://www.oracle-base.com/articles/8i/DetectAndCorrectCorruption.php
Aman....

Similar Messages

  • Block recovery why it needs so many archive dlogs

    Subject: Why does block recovery needs so many archived logs
    My blocks were corrupted on Sept 8 (looking at rman backup log).
    I am doing
    recover datafile 19 block 321, 322, 385, 513, 577 restore until time 'sysdate - 15';
    I am finding that this command first restores datafile of backup of Sept 7 and then it tries to get
    1.     All the archived logs from Sept 7 until today. If my blocks were corrupted on Sept 8 why does it need logs of next 10 days or so.
    2.     If restore of archived logs from tape somehow fails; then If I rerun recover data file 19 block command,
    It starts from the beginning; why?
    3.     Is there a way to do recovery based on archived logs received
    So far since I do not think more are needed. Can I just run:
    recover datafile 9 command.
    Can it be run while database is in open mode.

    user632098 wrote:
    Can I just run:
    recover datafile 9 command.
    Can it be run while database is in open mode.You can try to recover only a datafile if you have the right backup for the datafile and and all archived redo logs needed.
    It can be done online if the datafile does not belong to SYSTEM or UNDO tablespace.
    Example:
    RMAN> sql 'alter database datafile 4 offline';
    sql statement: alter database datafile 4 offline
    RMAN> restore datafile 4;
    Starting restore at 18-SEP-10
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: sid=21 devtype=DISK
    channel ORA_DISK_1: starting datafile backupset restore
    channel ORA_DISK_1: specifying datafile(s) to restore from backup set
    restoring datafile 00004 to C:\ORACLEXE\ORADATA\XE\USERS.DBF
    channel ORA_DISK_1: reading from backup piece C:\ORACLEXE\APP\ORACLE\FLASH_RECOV
    ERY_AREA\XE\BACKUPSET\2010_09_16\O1_MF_NNNDF_TAG20100916T210407_694TK7BY_.BKP
    channel ORA_DISK_1: restored backup piece 1
    piece handle=C:\ORACLEXE\APP\ORACLE\FLASH_RECOVERY_AREA\XE\BACKUPSET\2010_09_16\
    O1_MF_NNNDF_TAG20100916T210407_694TK7BY_.BKP tag=TAG20100916T210407
    channel ORA_DISK_1: restore complete, elapsed time: 00:00:07
    Finished restore at 18-SEP-10
    RMAN> recover datafile 4;
    Starting recover at 18-SEP-10
    using channel ORA_DISK_1
    starting media recovery
    archive log thread 1 sequence 70 is already on disk as file C:\ORACLEXE\APP\ORAC
    LE\FLASH_RECOVERY_AREA\XE\ARCHIVELOG\2010_09_17\O1_MF_1_70_695ZOOOH_.ARC
    archive log thread 1 sequence 71 is already on disk as file C:\ORACLEXE\APP\ORAC
    LE\FLASH_RECOVERY_AREA\XE\ARCHIVELOG\2010_09_17\O1_MF_1_71_6977XBK5_.ARC
    archive log thread 1 sequence 72 is already on disk as file C:\ORACLEXE\APP\ORAC
    LE\FLASH_RECOVERY_AREA\XE\ARCHIVELOG\2010_09_18\O1_MF_1_72_698RLXQC_.ARC
    archive log filename=C:\ORACLEXE\APP\ORACLE\FLASH_RECOVERY_AREA\XE\ARCHIVELOG\20
    10_09_17\O1_MF_1_70_695ZOOOH_.ARC thread=1 sequence=70
    archive log filename=C:\ORACLEXE\APP\ORACLE\FLASH_RECOVERY_AREA\XE\ARCHIVELOG\20
    10_09_17\O1_MF_1_71_6977XBK5_.ARC thread=1 sequence=71
    media recovery complete, elapsed time: 00:00:01
    Finished recover at 18-SEP-10
    RMAN> sql 'alter database datafile 4 online';
    sql statement: alter database datafile 4 online
    RMAN>

  • Rman block recovery

    I have a database which has database block corruption. I had a successful rman backup of Sunday.
    Monday and Tuesday rman backup failed saying
    ORA-19566: exceeded limit of 0 corrupt blocks for file F:\EM…….
    Then I modified rman script to skip up to 5 corrupt blocks..
    set maxcorrupt for datafile 'F:\......' to 5;
    Now my rman backup is successful on Wednesday…
    Now, I want to repair blocks using rman’s block recover command:
    recover datafile 19 block 321, 322, 385, 513, 577 restore
    My questions are:
    a.     Will rman automatically start with Sunday’s successful back and then apply archived logs.. or
    Will it start with Wednesday’s backups and then it won’t be able to recover corrupted blocks…
    b.     How to force rman block recover to start from Sunday’s backup …

    My questions are:
    a. Will rman automatically start with Sunday’s successful back and then apply archived logs.. or
    Will it start with Wednesday’s backups and then it won’t be able to recover corrupted blocks…If the sunday's RMAN backup is available. It will start with sunday's backup and will perform block recovery from required archive log.
    b. How to force rman block recover to start from Sunday’s backup …Not required. it will check for required backuppiece and go ahead with the process.

  • Doing Block Recovery of a Table

    Hello,
    We have to do a single block recovery of a table on Oracle 10gR2 Solaris machine.
    One of the archive was missing or corrupted.
    I was trying to do block recovery from the backup of 3 days. But it is applying all the archives and after that errors out saying media recovery failure due to missing/corrupt archive log.
    I have tried until scn , until sysdate-2 , using tag tagname etc....
    But in all the situations it is applying archive logs and giving media recovery failure.
    Is there any way I can only apply certain archive logs or do until a point in time of recovery of that single block.
    or just get the block from the backup and not apply the archive logs.
    Thanks

    Street Hawk wrote:
    Then you have to forget that block.
    OR
    you will have to do an incomplete recoveryI have to say that its "really wrong". How would you do an incomplete recovry of a corrupted block?
    http://download.oracle.com/docs/cd/B19306_01/backup.102/b14191/rcmconc2.htm#i1008221
    >
    Note these restrictions of block media recovery:
    You can only perform block media recovery with RMAN. No SQL*Plus recovery interface is available.
    You can only perform complete recovery of individual blocks. In other words, you cannot stop recovery before all redo has been applied to the block.
    You can only recover blocks marked media corrupt. The V$DATABASE_BLOCK_CORRUPTION view indicates which blocks in a file were marked corrupt since the most recent BACKUP or BACKUP ... VALIDATE command was run against the file.
    You must have a full RMAN backup. Incremental backups are not used by block media recovery. Proxy backups are also not used by block media recovery. Only full backups and archived log files are used.
    Block media recovery is able to restore blocks from parent incarnation backups and recover the corrupted blocks through a RESETLOGS.
    Blocks that are marked media corrupt are not accessible to users until recovery is complete. Any attempt to use a block undergoing media recovery results in an error message indicating that the block is media corrupt.>
    Flashback also is WRONG suggestion. It recovers your logical changes,not the physcial corruptions like block failure and you don't need to enable it. Its there by default. The flashback database option has to be enabled. But putting the whole database back in past , just because a block is corrupted , is that a wise thing to do?
    @OP,
    If you don't have all the archive logs, I would suggest to repair the block using [dbms_repair|http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_repair.htm] package. Note that the name of the package is "misleading".
    HTH
    Aman....

  • Block recovery errror

    Hi all
    in alert log file i am getting following messege
    Sat Jan 23 04:00:03 2010
    Recovery of Online Redo Log: Thread 1 Group 19 Seq 443514 Reading mem 0
    Mem# 0: /redo_odd2/oracle/VIGILANCE/data/VIGILANC/redo19aa.log
    Mem# 1: /redo_odd3/oracle/VIGILANCE/data/VIGILANC/redo19bb.log
    Mem# 2: /redo_odd1/oracle/VIGILANCE/data/VIGILANC/redo19cc.log
    Block recovery interrupted at rba 443514.342069.476
    Doing block recovery for file 15658 block 21511
    Block recovery from logseq 443514, block 182898 to scn 9095198491615
    Why it so
    it is critical production server

    Hi,
    Do You have any rman backup of that datafile ,
    if have then using rman you can recover the block as
    rman> recoverblock datafile <no.> block <no.>;
    try this
    farhan.

  • Boot block recovery

    Hello,
    Well, this one isn't as desperate as my last post.  Basically, I need to know where to go to get a boot block recovery cd.  Is it downloadable from here?  If so, where?  Otherwise, how else do I get one?  How do I get a backup disk in case this happens again? 

    hello
    i can lead you to the correct download section if you could provide your model number for your BIOS update
    Message Edited by samavedam_vijay on 04-04-2009 11:37 PM
    Cheers and regards,
    • » νιנαソѕαяα∂нι ѕαмανє∂αм ™ « •
    ●๋•کáŕádhí'ک díáŕý ツ
    I am a volunteer here. I don't work for Lenovo

  • Problem with block recovery!!!

    I backedup a database but,unable to backup this coz i got an error in which i found that my datafile 1 block's is currupt,then i look into session trace file in which i found that which block number has been currupt,then i recover block,but i get an error in which i see that no backupset is found to rman to recover,now i wanted to know that if i heven't a valid backup a database which block has been currup,can i recover a block? and also can backup database too???
    please help me out of this i would be very thankfull of you..

    You could try to repair a block with the built-in package DBMS_REPAIR.
    DBMS_REPAIR
    DBMS_REPAIR contains data corruption repair procedures that enable you to detect and repair corrupt blocks in tables and indexes. You can address corruptions where possible and continue to use objects while you attempt to rebuild or repair them.
    http://download-west.oracle.com/docs/cd/B10501_01/appdev.920/a96612/d_repair.htm#ARPLS044
    Joel Pérez
    http://otn.oracle.com/experts

  • Oracle 11g - How to repair block corruption(on free space) in datafile

    Hi,
    I have a tablesopace with 3 datafiles, out of which one datafile has corrupted block. But no objects or data is affected as the corrupted block os in free space. This was shown in the alert logs.
    Please see below the details:
    Wed Apr 06 15:30:04 2011
    SMON: Restarting fast_start parallel rollback
    SMON: ignoring slave err,downgrading to serial rollback
    ORACLE Instance geooap (pid = 12) - Error 1578 encountered while recovering transaction (10, 6) on object 149755.
    Errors in file f:\oracle11g\diag\rdbms\geooap\geooap\trace\geooap_smon_5540.trc:
    ORA-01578: ORACLE data block corrupted (file # 7, block # 54053)
    ORA-01110: data file 7: 'F:\ORACLE11G\ORADATA\GEOOAP\ORDER_DATA_01.DBF'
    GEOAP:
    Fri Apr 01 14:57:48 2011
    Errors in file f:\oracle11g\diag\rdbms\geop\geop\trace\geop_arc1_2156.trc:
    ORA-00235: control file read without a lock inconsistent due to concurrent update
    Fri Apr 01 14:57:58 2011
    ================================================================
    The corruption is being reported in a free space block of the ORDER_DATA_01.DBF.
    I’ve checked all the tables (and indexes) in this tablespace and none report corruption.
    =====================================================Is there any action I need to take to remove corruption at this point?It is not affected any operation on the database yet.
    What is the best way to do get rid of the corrupt block, without dropping and rebuillding the full tablespace(which is around 6 GB -total of 3 datafiles)
    Thanks a lot

    Can RMAN recover the datablock from this cold backup(which is a week old, the data file was not corrupted then) ?Please note that to do the recovery, you would need the backup and the archivelog files since the backup. Think about what you are asking to do. Its a single block whose recovery you are asking from a week old backup which obviously would be on an much older SCN compared to the rest of the database. How would you make that block consistent with the rest of the datafile. If you don't have archivelog in that db whose block is corrupted, you may forget that block and any data that it might ever had. Also, please read the documentation about the block recovery which explains the requirements very clearly,
    http://download.oracle.com/docs/cd/E11882_01/backup.112/e10642/rcmblock.htm#BRADV89784
    From the above link, 1st point,
    The target database must run in ARCHIVELOG mode and be open or mounted with a current control file.HTH
    Aman....

  • Corrupt Block

    how can i corrupt a block to mock up BMR (block media recovery) workaround , i want to corrupt some block of Oracle seeded table "emp" within scott schema.
    Regards
    Abhi

    Try this
    http://momendba.blogspot.com/2008/02/practicing-block-recovery-in-oracle.html
    http://naveenkumarsr.wordpress.com/2011/03/29/corrupting-oracle-blocks/

  • Needs help regarding block corruption

    DB Version - 11.2.0.3.0
    Issue - Last backup failed due to block corruption ,message says "ORA-19566: exceeded limit of 0 corrupt blocks for file /GP/GAA01-N-P/db00/index01/GPEDWPR/bi_gpedw_fcct.dbf'
    I tried to perform block recovery using RMAN but it was not present in backup, hence failed. tried in the below way also :-
    RMAN> LIST FAILURE
    2> ;
    using target database control file instead of recovery catalog
    List of Database Failures
    =========================
    Failure ID Priority Status Time Detected Summary
    72981 HIGH OPEN 13-JAN-13 Datafile 58: '/GP/GAA01-N-P/db00/index01/GPEDWPR/bi_gpedw_fcct.dbf'
    contains one or more corrupt blocks
    RMAN> ADVISE FAILURE
    2> ;
    List of Database Failures
    =========================
    Failure ID Priority Status Time Detected Summary
    72981 HIGH OPEN 13-JAN-13 Datafile 58: '/GP/GAA01-N-P/db00/index01/GPEDWPR/bi_gpedw_fcct..dbf' contains one or more corrupt blocks
    analyzing automatic repair options; this may take some time
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=2055 device type=DISK
    analyzing automatic repair options complete
    Mandatory Manual Actions
    ========================
    1. No backup of block 3106752 in file 58 was found. Drop and re-create the associated object (if possible), or use the DBMS_REPAIR package to repair the block corruption
    2. No backup of block 3106911 in file 58 was found. Drop and re-create the associated object (if possible), or use the DBMS_REPAIR package to repair the block corruption
    3. No backup of block 3106976 in file 58 was found. Drop and re-create the associated object (if possible), or use the DBMS_REPAIR package to repair the block corruption
    4. No backup of block 3107504 in file 58 was found. Drop and re-create the associated object (if possible), or use the DBMS_REPAIR package to repair the block corruption
    5. Contact Oracle Support Services if the preceding recommendations cannot be used, or if they do not fix the failures selected for repair
    Now how to troubleshoot ? Any help will be highly appreciated

    First, you need to determine to which segment the block is assigned:
    select segment_type,owner,segment_name
    from dba_extents
    where file_id=58 and 3106752 between block_id and (blockid + blocks -1);
    Your action from there will depend on the type of segment. Since you have no backup, the options are limited. But there are still possibilities.

  • Block Corruption in the SYSAUX tablespace

    Problem Description: Block Corruption in the SYSAUX tablespace :
    ==================================
    We are facing block corruption issue in the SYSAUX tablespace during rman backup..
    So currently we are using SET MAXCORRUPT FOR DATAFILE 3 TO 2; parameter to take the backup and it is running fine.. Now we have to fix the issue..
    Please let us know the steps to fix the issue..
    Please find the details below.
    Dbv output:
    sesoxpro33.p51x1> dbv file=/oradata/p51x/data/p51x_sysaux_01.dbf blocksize=32768 end=64000
    DBVERIFY: Release 10.2.0.3.0 - Production on Fri Aug 26 20:47:29 2011
    Copyright (c) 1982, 2005, Oracle. All rights reserved.
    DBVERIFY - Verification starting : FILE = /oradata/p51x/data/p51x_sysaux_01.dbf
    Page 64 is influx - most likely media corrupt
    Corrupt block relative dba: 0x00c00040 (file 3, block 64)
    Fractured block found during dbv:
    Data in bad block:
    type: 0 format: 0 rdba: 0x00000000
    last change scn: 0x0000.00000000 seq: 0x0 flg: 0x00
    spare1: 0x0 spare2: 0x0 spare3: 0x0
    consistency value in tail: 0x00000001
    check value in block header: 0x0
    block checksum disabled
    DBVERIFY - Verification complete
    Total Pages Examined : 64000
    Total Pages Processed (Data) : 22547
    Total Pages Failing (Data) : 0
    Total Pages Processed (Index): 23859
    Total Pages Failing (Index): 0
    Total Pages Processed (Other): 14586
    Total Pages Processed (Seg) : 0
    Total Pages Failing (Seg) : 0
    Total Pages Empty : 3007
    Total Pages Marked Corrupt : 1
    Total Pages Influx : 1
    Highest block SCN : 281617057 (2054.281617057)
    SELECT tablespace_name, segment_type, owner, segment_name FROM dba_extents
    WHERE file_id = 3 and 64 between block_id AND block_id + blocks - 1;
    TABLESPACE_NAME SEGMENT_TYPE OWNER
    SEGMENT_NAME
    SYSAUX SYS_LOB0000000594C00007$$
    OS & database Details :
    ==========
    Oracle Solaris on x86-64 (64-bit)
    Oracle Server - Enterprise Edition -- 10.2.0.3
    If any more informatin is needed, Please let me know..
    Thanks & Regards,
    Suresh Bommalata.

    refer:
    logical corruption found in the sysaux tablespace
    Check the metalink note: Identify the corruption extension using RMAN/DBV/ANALYZE etc - 836658.1
    Note 28814.1 - Handling Oracle Block Corruptions in Oracle7/8/8i/9i/10g
    Note 472231.1 - How to identify all the Corrupted Objects in the Database reported by RMAN
    http://download.oracle.com/docs/cd/B12037_01/server.101/b10734/rcmrecov.htm
    http://oracleinstance.blogspot.com/2010/05/block-recovery-using-rman-backup.html

  • RMAN problem with block corruption

    Hi
    I have problem with the block corruption in one of the database .
    here is the error message .
    ora-01578:oracle data block corrupted (file# 10,block # 55309) ora-01110: data file 10:
    '/db/gist1/data/gist1_gis_nologging_01.dbf' ora-26040: data block was loaded using the NOLOGGING option .
    gisq SQL> select * from v$database_block_corruption;
    FILE# BLOCK# BLOCKS CORRUPTION_CHANGE# CORRUPTIO
    10 11 126 3754364971 LOGICAL
    RMAN> blockrecover datafile 10 block 11;
    Starting blockrecover at 14/DEC/2012 16:25:48
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of blockrecover command at 12/14/2012 16:25:48
    RMAN-05009: Block Media Recovery requires Enterprise Edition
    Could some one help me in providing solution for this . we we have standard addition only .
    Thanks in advance ...

    It appears that there was a NOLOGGING operation on an object that resides in '/db/gist1/data/gist1_gis_nologging_01.dbf' .
    NOLOGGING operations, as the name suggests, do generate limited redo log, which makes the objects affected by them non-recoverable.
    RMAN Blockrecover, as far as I understand, uses full and archivelog backup to perform the block recovery. Since the archivelog backup does not store any changes related to the NOLOGGING operation, then Blockrecover would not be able to help you even if you were licensed.
    You can try to restore the object as of the most recent full backup…
    Iordan Iotzov
    http://iiotzov.wordpress.com/

  • Block corruption in 805

    Hi,
    we have 805 database. We have a table which contiants corrupted blocks.
    So I went to export dump (backup) and imported to a new temp instance. But strage thing is when I select on new instance, it giving again block corruption error for this table, (new database, new datafile)
    so any idea what can cause for this ? and any suggestion plz ???
    Thanks in advance.

    refer:
    logical corruption found in the sysaux tablespace
    Check the metalink note: Identify the corruption extension using RMAN/DBV/ANALYZE etc - 836658.1
    Note 28814.1 - Handling Oracle Block Corruptions in Oracle7/8/8i/9i/10g
    Note 472231.1 - How to identify all the Corrupted Objects in the Database reported by RMAN
    http://download.oracle.com/docs/cd/B12037_01/server.101/b10734/rcmrecov.htm
    http://oracleinstance.blogspot.com/2010/05/block-recovery-using-rman-backup.html

  • Block recover in oracle 10g

    Hi all,
    db version - 10.2.0.4 ; OS version : RHEL 5.7
    There was a corruption in the block in undo datafile in one of our production database. I tried to recover the block using RMAN :
    RMAN> blockrecover datafile # block #;
    but what its doing is restoring all the archive logs to the archive destination. I have started the block recovery at 10:30am and its already 11:50pm but still its restoring all the archive logs. First it read the last FULL backup which was of date 02-July-2012 , Once it completed that it started restoring all the archived logs to the archive destination.
    I am really confused what I have to do know. I am thinking of stopping the restoration and then add a new datafile to the Undo tablespace and then remove the corrupted block undo datafile.
    Is my approach correct or Do I need to follow any other procedure to overcome the issue.
    Regards,
    Imran Khan

    I mean rman block recovery procedure. I am not deleting yet. I just wanna know which approach I have to take in order to resolve the issue.
    Regards,
    Imran Khan

  • How to overcome from Data block corruption error

    Hi,
    I am using one table when i was deleting one row, i encountered "Data block corruption error".
    Kindly suggest solutions for the same.
    Regards,
    Abhishek

    If you have a recovery manager backup, then you can perform a block recovery operation, after the information shown on the error message where the file# and the block# are displayed you can perform the block recovery operation.
    Syntax for the block recovery operation can be found here : BLOCKRECOVER
    In case of an index block, it is enough to rebuild the index.
    In case you have a regular backup with archivelog enabled you can restore the damaged datafile and perform a simple file recovery operation.
    One more additional tip that can be used, you may be interested in using the DBMS_REPAIR package unit.
    Finally, I suggest you to check the complete datafile using dbv (Database Verifier) utility to find out if there are more corrupt blocks in your datafile, and proactively run this utility as a maintenance task.
    ~ Madrid

Maybe you are looking for

  • Delete file from original location and when copied size of file increases.

    hi ! I have 2 exe's both of 1.15MB which I want to move to another folder. The files are copied to the folder but the size of exe increases to around 350MB each. What can be the problem ? BufferedOutputStream bos=new BufferedOutputStream(new FileOutp

  • How to insert data from a table to database

    Hi all, My problem statement is that: I have jsp page, which has a table with some columns editable for inserting data. I am using MySql database. Now when I insert the data in the table and click submit button , the data entered must get stored in t

  • Error while creating template

    hello,  We have SCVMM 2012 R2 environment and  Hyper-v host  are added. I created a VM  on host machine and then its clone but jobs gets failed with following below error and this error am getting very frequently on scvmm server/ Error (2912) An inte

  • How do I get rid of 'Top Hits' in the search bar/ url address bar?

    I have websites in my bookmark folders but I don't want them to appear as a suggestion when I search, I've cleared my history and they are still there. I don't wish to delete my bookmarks though. I'm using Safari version 6.0

  • I Have Too Much Music

    i have 65 G of music on my mac and would like to take it off my hard drive and put it on a external hard drive. is there any way i could play my music through itunes and not actually have to load all the songs back into itunes. maybe if i ran itunes