Database 8.1.7 block corrupts on crash

Hi,
I have a customer running 8.1.7 database on Redhat Linux 2.1 platform. His problem is: when his computer system crashes, he is not able to do an update on a table anymore because the block gets corrupted.
Can anything be done to fix this?
Thanks,
Vijay.

hi sam,
this is the OracleAS Portal Content Management forum. Please post your question in the Database forum
General Database Discussions
thanks,
christian

Similar Messages

  • Blocks corrupted

    Hi,
    I got below output from one of my databases, are these below blocks corrupted?
    if yes, could some one please send me the recovery steps (through RMAN).
    SQL> select * from v$database_block_corruption;
    FILE# BLOCK# BLOCKS CORRUPTION_CHANGE# CORRUPTIO_TYPE
    3 33289 1 0 CORRUPT
    3 3146 1 0 CORRUPT
    3 15170 1 0 CORRUPT
    3 15684 1 0 CORRUPT
    how do I identify the tables or objects associated to these corrupted blocks?
    Thanks,
    Raja

    Try this:
    select * from dba_extents
    where file_id = (<File No in Error Log>) and (<block no in error log>) between block_id and (block_id + blocks -1);
    Werner

  • System datafile block corruption - no backups and database in NOARCHIVELOG mode

    Dear All,
    Database version - oracle 11.1 Enterprise
    OS - RHELinux 5.8
    What are the options of recovering from physical block corruption when there are no backup available to perform block media recovery?
    V$DATABASE_BLOCK_CORRUPTION reports two segments corrupted (please see attached image for details).
    1 table in system datafile - sys_fba_barrierscn
    1 index - (applicaiton index)
    What are my options?
    I know there is a possibility that the database will not restart after a shutdown due to corruption in system tablespace.
    Database is in noarchivelog mode. So online backups are not possible and there aren't any full backups either.
    I am thinking of below,
    1. Run dbms_repair with fix_block_corruption. - Still database startup might fail?
    2. Shutdown the database and take offline full backup with RMAN MAXCorrupt option.
    Appreciate your suggestions and advises.
    Thanks
    Stefan

    Thanks Sybrand,
    Agree with your first two suggestions .
    Also scheduled a expdp job tonight. (Only backup like thing they had was a expdp cron, but until today all the large tables were failing due to small undo_retention).
    Yes. Flashback is not used. So hopefully it will not affect the a database restart i guess?
    Related to dbms_repair, I was referring to - http://askdba.org/weblog/2010/08/physical-corruption-ora-1578-part-3/.
    Where DBMS_REPAIR.FIX_CORRUPT_BLOCKS and DBMS_REPAIR.SKIP_CORRUPT_BLOCKS used.
    Which i think will not use any redo.
    Thanks
    Stefan

  • Block corruption on Standby database

    Oracle 10g R2 64bit on Solaris 10 installed on two database server, Sun M5000 and Sun V890
    Primary and physical Standby database is configured with Max performance Async mode, log shipping is ok, archive logs are also applying..
    I opened the standby database on readonly mode, couple of SQLs are running successfully but few SQLS are throwing error meesaage, here is log message -
    SQL> select count(1) from inventory_stock;
    select count(1) from inventory_stock
    ERROR at line 1:
    ORA-01578: ORACLE data block corrupted (file # 12, block # 28109)
    ORA-01110: data file 12: '/backup1/np13/data/invindx01.dbf'
    ORA-26040: Data block was loaded using the NOLOGGING option
    However there is no error meesage recorded in Alert log files related to block corruption. Please suggest

    select file#,UNRECOVERABLE_CHANGE#,UNRECOVERABLE_TIME
    from V$DATAFILE
    where UNRECOVERABLE_TIME is not null
    FILE# UNRECOVERABLE_CHANGE# UNRECOVER
    4 9.7333E+12 12-SEP-10
    5 9.7333E+12 12-SEP-10
    6 9.7333E+12 12-SEP-10
    7 9.7333E+12 12-SEP-10
    9 9.7333E+12 12-SEP-10
    12 9.7333E+12 13-SEP-10
    13 9.7333E+12 13-SEP-10
    14 9.7327E+12 01-SEP-10
    15 9.7333E+12 13-SEP-10
    17 9.7333E+12 13-SEP-10
    22 9.7333E+12 13-SEP-10
    23 9.7333E+12 13-SEP-10
    24 9.7333E+12 13-SEP-10
    32 9.7333E+12 13-SEP-10
    33 9.7333E+12 13-SEP-10
    34 9.7333E+12 13-SEP-10
    35 9.7333E+12 13-SEP-10
    41 9.7324E+12 25-AUG-10
    42 9.7333E+12 13-SEP-10
    43 9.7333E+12 13-SEP-10
    44 9.7333E+12 13-SEP-10
    45 9.7333E+12 13-SEP-10
    57 9.7332E+12 11-SEP-10
    60 9.7333E+12 13-SEP-10
    62 9.7333E+12 12-SEP-10
    63 9.7333E+12 13-SEP-10
    65 9.7333E+12 13-SEP-10
    66 9.7333E+12 13-SEP-10
    68 9.7333E+12 13-SEP-10
    70 9.7333E+12 13-SEP-10
    71 9.7333E+12 12-SEP-10
    73 9.7333E+12 12-SEP-10
    74 9.7333E+12 13-SEP-10
    75 9.7333E+12 12-SEP-10
    77 9.7324E+12 25-AUG-10
    79 9.7333E+12 13-SEP-10
    83 9.7333E+12 13-SEP-10
    84 9.7333E+12 13-SEP-10
    86 9.7333E+12 13-SEP-10
    87 9.7333E+12 12-SEP-10
    89 9.7333E+12 12-SEP-10

  • Database Block Corruption

    Dear Experts,
    In our BW system, from the alert log we have found that one oracle block was corrupted.
    > ORA-01578: ORACLE data block corrupted (file # 137, block #
    > 516877)#ORA-01110: data file 137:
    > '/oracle/PBP/sapdata1/sr3_121/sr3.data121'#ORA-26040: Data
    > block was loaded using the NOLOGGING option
    Database error 1578
    Database error 1578 at FET
    > ORA-01578: ORACLE data block corrupted (file # 137, block #
    > 516877)#ORA-01110: data file 137:
    > '/oracle/PBP/sapdata1/sr3_121/sr3.data121'#ORA-26040: Data
    > block was loaded using the NOLOGGING option
    Database error 1578
    From the SAP Market place we have found one KBA (1812719 - Avoid NOLOGGING during the index creation) which says that it was not really a corruption and it can be cleared by rebuilding the index.
    Can any one please help us how to find the index present in that block. I have tried with below command which returns no rows.
    SQL> select segment_name, partition_name, segment_type, block_id, blocks from dba_extents where (516877 between block_id and (block_id + blocks - 1)) and file_id = 137 and rownum < 2;
    no rows selected
    SQL>
    Please suggest how to find the index for rebuilding the same for clearing the corruption.
    Thanks
    Suresh

    Hi Suresh,
    Kindly check SAP Notes  365481 - Block corruptions
    1559652 - How to deal with block corruptions on Oracle
    923919 - Advanced Oracle block checking features
    Regards,
    Gaurav

  • Data block corrupted on standby database (logical corruption)

    Hi all,
    we are getting the below error on our DRSITE,it is MANUAL PHYSCIAL STANDBY DATABSE...
    The following error has occurred:
    ORA-01578: ORACLE data block corrupted (file # 3, block # 3236947)
    ORA-01110: data file 3: '/bkp/oradata/orcl_raw_cadata01'
    ORA-26040: Data block was loaded using the NOLOGGING option
    I have checked in the Primary database, that there are some object which are not being logged into the redo logfiles.....
    SQL> select table_name,INDEX_NAME,logging from dba_indexes where logging='NO'
    TABLE_NAME INDEX_NAME LOG
    MENU_MENUS NUX_MENU_MENUS_01 NO
    MENU_USER_MENUS MENU_USER_MENUS_X NO
    OM_CITY IDM_OM_CITY_CITY_NAME NO
    OM_EMPLOYER                    EMPLR_CODE_PK                  NO
    OM_EMPLOYER                    IDM_EMPLR_EMPLR_NAME           NOOM_STUDENT_HEAD OM_STUDENT_HEAD_HEAD_UK01 NO
    OT_DAK_ENTRY_DETL DED_SYS_ID_PK NO
    OT_DAK_ENTRY_HEAD DEH_SYS_ID_PK NO
    OT_DAK_ENTRY_HEAD IDM_DEH_DT_APPL_REGION NO
    OT_DAK_ENTRY_HEAD IDM_DEH_REGION_CODE NO
    OT_DAK_REFUNDS_DETL DRD_SYS_ID_PK NO
    TABLE_NAME INDEX_NAME LOG
    OT_MEM_FEE_COL_DETL IDM_MFCD_MFCH_SYS_ID NO
    OM_STUDENT_HEAD IDM_STUD_COURSE NO
    13 rows selected.
    so the main problem is in the OM_EMPOYER tables if i would delete the indexes from that table recreate it again with the logging clause,and then apply the archvied logs to the DRSITE.WILL THE problem will resolve.
    Pls suggest me...

    Hi..
    Firstly how did you confirm that it was that index only.Can you post the output of
    SELECT tablespace_name, segment_type, owner, segment_name
    FROM dba_extents WHERE file_id = 3 and 3236947 between block_id
    AND block_id + blocks - 1;
    This query can take time, if are sure that its the index don't fire this command .
    Secondly, when you will drop and recreate the index, it will be logged into the redo logfile.This information will be be logged in to an the archivelog file as its the replica of the redo logfile. Then when you apply this archive log maually, it will drop that index and then recreate it using the same sql.
    HTH
    Anand

  • Oracle 11g: Block Corruption in SYSAUX File

    Hello All,
    I am facing Data corruption issue in the SYSAUX file.
    We are using Oracle 11G (Microsoft 32 bit) and our system is running in noarchivelog mode.
    Following are the errors in the alert log.
    e:\sc\sc15.2\databases\oracleconfig\diag\rdbms\enmscsdb\nm45\trace\nm45_p000_5944.trc
    Corrupt block relative dba: 0x0088a9f8 (file 2, block 567800)
    Fractured block found during buffer read
    Data in bad block:
    type: 6 format: 2 rdba: 0x0088a9f8
    last change scn: 0x0000.0b3bb7c7 seq: 0x1 flg: 0x04
    spare1: 0x0 spare2: 0x0 spare3: 0x0
    consistency value in tail: 0xc7000601
    check value in block header: 0xee6b
    computed block checksum: 0x72c6
    Reread of rdba: 0x0088a9f8 (file 2, block 567800) found same corrupted data
    Thu Jan 22 16:46:44 2009
    SMON: Restarting fast_start parallel rollback
    SMON: ignoring slave err,downgrading to serial rollback
    ORACLE Instance nm45 (pid = 12) - Error 1578 encountered while recovering transaction (9, 11) on object 458.
    Errors in file e:\sc\sc15.2\databases\oracleconfig\diag\rdbms\enmscsdb\nm45\trace\nm45_smon_6492.trc:
    ORA-01578: ORACLE data block corrupted (file # 2, block # 567800)
    ORA-01110: data file 2: 'E:\SC\SC15.2\DATABASES\ORACLECONFIG\SYSAUXNM45.ORA'
    Thu Jan 22 16:46:45 2009
    Trace dumping is performing id=[cdmp_20090122164645]
    Corrupt Block Found
    TSN = 1, TSNAME = SYSAUX
    RFN = 2, BLK = 567800, RDBA = 8956408
    OBJN = 458, OBJD = 458, OBJECT = I_WRI$_OPTSTAT_HH_OBJ_ICOL_ST, SUBOBJECT =
    SEGMENT OWNER = SYS, SEGMENT TYPE = Index Segment
    Following query indicates the corruption is in index.
    SQL> SELECT tablespace_name, segment_type, owner, segment_name FROM dba_extents
    WHERE file_id = 2 and 567800 between block_id AND block_id + blocks - 1;
    TABLESPACE_NAME SEGMENT_TYPE OWNER
    SEGMENT_NAME
    SYSAUX INDEX SYS
    I_WRI$_OPTSTAT_HH_OBJ_ICOL_ST
    ==============
    DBverify output:
    ==============
    E:\SC\SC15.2\Databases\OracleConfig>dbv file=SYSAUXNM45.ORA blocksize=8192
    DBVERIFY: Release 11.1.0.7.0 - Production on Thu Jan 22 16:59:11 2009
    Copyright (c) 1982, 2007, Oracle. All rights reserved.
    DBVERIFY - Verification starting : FILE = E:\SC\SC15.2\Databases\OracleConfig/SY
    SAUXNM45.ORA
    DBV-00200: Block, DBA 8956312, already marked corrupt
    Page 567800 is influx - most likely media corrupt
    Corrupt block relative dba: 0x0088a9f8 (file 2, block 567800)
    Fractured block found during dbv:
    Data in bad block:
    type: 6 format: 2 rdba: 0x0088a9f8
    last change scn: 0x0000.0b3bb7c7 seq: 0x1 flg: 0x04
    spare1: 0x0 spare2: 0x0 spare3: 0x0
    consistency value in tail: 0xc7000601
    check value in block header: 0xee6b
    computed block checksum: 0x72c6
    DBVERIFY - Verification complete
    Total Pages Examined : 1623864
    Total Pages Processed (Data) : 540984
    Total Pages Failing (Data) : 0
    Total Pages Processed (Index): 964944
    Total Pages Failing (Index): 0
    Total Pages Processed (Other): 17849
    Total Pages Processed (Seg) : 0
    Total Pages Failing (Seg) : 0
    Total Pages Empty : 100086
    Total Pages Marked Corrupt : 2
    Total Pages Influx : 1
    Total Pages Encrypted : 0
    Highest block SCN : 190789648 (0.190789648)
    SQL> select * from v$database_block_corruption;
    FILE# BLOCK# BLOCKS CORRUPTION_CHANGE# CORRUPTIO
    2 567800 1 0 FRACTURED
    2 567704 1 0 FRACTURED
    How to resolve this issue.
    Thanks
    With Regards
    Hemant Joshi.

    Drop and re-creating the index would be better than re-building the index.
    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
    ORA-1578 Main Reference Index for Solutions -830997.1

  • Need advice on ORA-01578: ORACLE data block corrupted

    We have a development database server version- 10.2.0.3 with materialized views refresh as complete every morning. Yesterday we had a power failure and the server went down and database was shutdown unexpectedly.
    When we restarted the database after the server restarted, we found some of the datablocks got corrupted . Following were the exceptions that we saw in the alert.log.
    Errors in file /i01_01/app/oracle/product/10.2.0/db_1/admin/orcl9/bdump/orcl9_smon_7547.trc:
    ORA-01578: ORACLE data block corrupted (file # 11, block # 257712)
    ORA-01110: data file 11: '/i01_01/app/oracle/product/10.2.0/oradata/orcl9/ts_gen_data_02.dbf'
    ORACLE Instance orcl9 (pid = 8) - Error 1578 encountered while recovering transaction (9, 38) on object 54463
    I tried the following query to see the segment type.
    select owner, segment_name, segment_type from dba_extents where file_id =11 and 257712 between block_id and block_id + blocks - 1;
    OWNER
    SEGMENT_NAME
    SEGMENT_TYPE
    VISH
    INVENTORY_TXN
    TABLE
    where " INVENTORY_TXN " is a materialized view that was using the block that got corrupted. I can always recreate the MV by dropping and recreating it. Will it solve the problem???
    If not, how can I recover/repair the block.???
    Can anyone advice on this. Thanks very much in advance.

    To recover a corrupted block,the best way out is to use Blockrecover command of RMAN. So you would need RmAN backup to perform the operation.But first ypu you need to ensure that this is a persistent error or not? Is this error is coming repeatedly or just once it happened?
    About Blockrecover command,read here,
    http://download.oracle.com/docs/cd/B19306_01/backup.102/b14191/rcmrecov005.htm#BRADV157
    HTH
    Aman....

  • 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....

  • Data Block Corruption

    I'm on 9i R2 Patch 7 on a Microsoft Windows Server 2003.
    How do you fix data block corruption in a Table?
    Is the some way to retrieve the data from the Table drop it then recreate and reimport the data?
    or do you have to succumb with restoring the Database from the last known good backup?

    Hey, you can do the BMR (Block Media Recovery).
    Since block corruption is to few subsets of blocks, i.e. a single table, you dont need to restore from the previous valid backup, you can simply do the following to achieve BMR.
    Connect to rman and run the following:
    run{ backup validate database};
    Once the above commend is finishes, exit from RMAN and connect to the database as / as sysdba and use the following view to know the details required for BMR.
    select * from V$backup_corruption;
    The above queries gives you file# and block# information. Once you have the information do the BMR using following command at the RMAN prompt:
    run {blockrecover datafile # block #};
    # : indicated the datafile number and block number from the above view.
    Let me know if you have any further issues.
    You can also use view V$DATABASE_BLOCK_CORRUPTION to view the file# and corrupted blocks information.
    Jaffar

  • Finding and fixing block corruption in oracle 10g

    10.2.0.5.6
    OS: Hp-unix
    databases files on RAW.
    DB Size: 10 TBs+
    We had a SAN outage recently. The DB is back online. We want to check for block corruption to be on the safe side. We are planning to take a SAN EMC BCV copy of prod to run this. Looking for opinioms on the best way.Production is up and running. This is just a sanity check.
    We are NOT using RMAN for backups. We do a BCV copy and then back that up and archive logs to tape.
    RMAN: Can we do this from the control files? Do we have to set anything up? Is this the best way?
    DBMS_REPAIR: I have not used this. We don't even have the package installed. I can install it.
    DB_VERIFY: not sure if this is a good option or not. Is this current? I know I'll have to do it file by file and grep the logs. I have used this in the past, but its been a while.
    Performance issues, CPU, I/O don't matter. We are doing a BCV copy and then mounting the DB on a new server.

    Guess2 wrote:
    10.2.0.5.6
    OS: Hp-unix
    databases files on RAW.
    DB Size: 10 TBs+
    We had a SAN outage recently. The DB is back online. We want to check for block corruption to be on the safe side. We are planning to take a SAN EMC BCV copy of prod to run this. Looking for opinioms on the best way.Production is up and running. This is just a sanity check.
    We are NOT using RMAN for backups. We do a BCV copy and then back that up and archive logs to tape.
    RMAN: Can we do this from the control files? Do we have to set anything up? Is this the best way?
    DBMS_REPAIR: I have not used this. We don't even have the package installed. I can install it.
    DB_VERIFY: not sure if this is a good option or not. Is this current? I know I'll have to do it file by file and grep the logs. I have used this in the past, but its been a while.
    Performance issues, CPU, I/O don't matter. We are doing a BCV copy and then mounting the DB on a new server.
    bcm@bcm-laptop:~$ dbv -help
    DBVERIFY: Release 11.2.0.1.0 - Production on Mon May 21 07:29:42 2012
    Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
    Keyword     Description                    (Default)
    FILE        File to Verify                 (NONE)
    START       Start Block                    (First Block of File)
    END         End Block                      (Last Block of File)
    BLOCKSIZE   Logical Block Size             (8192)
    LOGFILE     Output Log                     (NONE)
    FEEDBACK    Display Progress               (0)
    PARFILE     Parameter File                 (NONE)
    USERID      Username/Password              (NONE)
    SEGMENT_ID  Segment ID (tsn.relfile.block) (NONE)
    HIGH_SCN    Highest Block SCN To Verify    (NONE)
                (scn_wrap.scn_base OR scn)           can be done against any datafile; open or closed, production or clone
    Handle:     Guess2
    Status Level:     Newbie
    Registered:     Aug 5, 2000
    Total Posts:     454
    Total Questions:     212 (201 unresolved)
    WHY so MANY unanswered questions?
    Edited by: sb92075 on May 21, 2012 7:31 AM

  • Oracle V11.2.0.3 ORA-01578: ORACLE data block corrupted - OBJECT = IDL_UB1$

    Hi,
    I am running into a data corruption issue.
    My database is:
    SQL> select banner from v$version;
    BANNER
    Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
    PL/SQL Release 11.2.0.3.0 - Production
    CORE 11.2.0.3.0 Production
    TNS for Linux: Version 11.2.0.3.0 - Production
    NLSRTL Version 11.2.0.3.0 - Production
    The following information is written to the alert.log File
    alert.log File
    Mon Nov 07 17:24:12 2011
    Starting ORACLE instance (normal)
    LICENSE_MAX_SESSION = 0
    LICENSE_SESSIONS_WARNING = 0
    Picked latch-free SCN scheme 2
    Using LOG_ARCHIVE_DEST_1 parameter default value as USE_DB_RECOVERY_FILE_DEST
    Autotune of undo retention is turned on.
    IMODE=BR
    ILAT =27
    LICENSE_MAX_USERS = 0
    SYS auditing is disabled
    Starting up:
    Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production.
    ORACLE_HOME = /home/oracle/dbhome
    System name: Linux
    Node name: dbl-ora
    Release: 2.6.18-274.3.1.el5 (This is rhel5.7 or CentOs5.7)
    Version: #1 SMP Tue Sep 6 20:14:03 EDT 2011
    Machine: i686 / vm
    Mon Nov 07 19:42:14 2011
    Corrupt Block Found
    TSN = 0, TSNAME = SYSTEM
    RFN = 1, BLK = 52346, RDBA = 4246650
    OBJN = 225, OBJD = 225, OBJECT = IDL_UB1$, SUBOBJECT =
    SEGMENT OWNER = SYS, SEGMENT TYPE = Table Segment
    Errors in file /home/oracle/diag/rdbms/ora11/K/trace/K_ora_5425.trc (incident=11053):
    ORA-01578: ORACLE data block corrupted (file # 1, block # 52346)
    ORA-01110: data file 1: '/home/oracle/oradata/ora11/system01.dbf'
    Incident details in: /home/oracle/diag/rdbms/ora11/K/incident/incdir_11053/K_ora_5425_i11053.trc
    I was even able to detect the row that is generating the issue.
    In my case the obj# 33573 until 33577 are causing the issue,
    though I have no idea what sort of objects are affected.
    SQL> select * from idl_ub1$ where obj#=33572;
    OBJ# PART VERSION PIECE# LENGTH P
    33572 1 0 0 9032 F
    SQL> select * from idl_ub1$ where obj#=33573;
    ERROR:
    ORA-01578: ORACLE data block corrupted (file # 1, block # 52346)
    ORA-01110: data file 1: '/home/oracle/oradata/ora11/system01.dbf'
    no rows selected
    SQL> select * from idl_ub1$ where obj#=33577;
    ERROR:
    ORA-01578: ORACLE data block corrupted (file # 1, block # 52358)
    ORA-01110: data file 1: '/home/oracle/oradata/ora11/system01.dbf'
    no rows selected
    SQL> select * from idl_ub1$ where obj#=33578;
    OBJ# PART VERSION PIECE# LENGTH P
    33578 1 0 0 9032 F
    Any idea, how to fix this problem without recreating the whole database?
    Thanks in advance.
    wmager
    Edited by: magerxr on Nov 7, 2011 8:27 AM

    magerxr wrote:
    Thanks again for your quick advise.
    Here comes the result of dbv against my system tablespace.
    [oracle@dbl-ora ~]$ dbv FILE=/home/oracle/oradata/ora11/system01.dbf
    DBVERIFY: Release 11.2.0.3.0 - Production on Mon Nov 7 22:39:11 2011
    Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
    DBVERIFY - Verification starting : FILE = /home/oracle/oradata/ora11/system01.dbf
    Page 52346 is influx - most likely media corrupt
    Corrupt block relative dba: 0x0040cc7a (file 1, block 52346)
    Fractured block found during dbv:
    Data in bad block:
    type: 6 format: 2 rdba: 0x0040cc7a
    last change scn: 0x0000.0010acfa seq: 0x1 flg: 0x04
    spare1: 0x0 spare2: 0x0 spare3: 0x0
    consistency value in tail: 0x00000000
    check value in block header: 0x8fda
    computed block checksum: 0xaafbselect owner, segment_type, segment_name from dba_extents
    where file_id = 1 and 52346 between block_id and block_id+blocks-1;
    >
    Page 52347 is marked corrupt
    Corrupt block relative dba: 0x0040cc7b (file 1, block 52347)
    Bad header found during dbv:
    Data in bad block:
    type: 1 format: 6 rdba: 0x0000a206
    last change scn: 0xacfa.0040cc7b seq: 0x10 flg: 0x00
    spare1: 0xfa spare2: 0xac spare3: 0x401
    consistency value in tail: 0x00000000
    check value in block header: 0x0
    block checksum disabled
    select owner, segment_type, segment_name from dba_extents
    where file_id = 1 and 52347 between block_id and block_id+blocks-1;
    Page 52361 is marked corrupt
    Corrupt block relative dba: 0x0040cc89 (file 1, block 52361)
    Bad header found during dbv:
    Data in bad block:
    type: 1 format: 6 rdba: 0x0000a206
    last change scn: 0xacfb.0040cc89 seq: 0x10 flg: 0x00
    spare1: 0xfb spare2: 0xac spare3: 0x401
    consistency value in tail: 0x32298500
    check value in block header: 0x0
    block checksum disabled
    select owner, segment_type, segment_name from dba_extents
    where file_id = 1 and 52361 between block_id and block_id+blocks-1;
    >
    >
    DBVERIFY - Verification complete
    Total Pages Examined : 122880
    Total Pages Processed (Data) : 81298
    Total Pages Failing (Data) : 0
    Total Pages Processed (Index): 22307
    Total Pages Failing (Index): 0
    Total Pages Processed (Other): 3349
    Total Pages Processed (Seg) : 1
    Total Pages Failing (Seg) : 0
    Total Pages Empty : 15910
    Total Pages Marked Corrupt : 16
    Total Pages Influx : 1
    Total Pages Encrypted : 0
    Highest block SCN : 4064615 (0.4064615)post results from 3 SQL above

  • Oracle giving Block corruption errors when using CDC for sending the data to SQL Server 2012

    Hello Friends,
    We are facing an error while using CDC with Oracle. It is a "Block corruption" error, which indicates at some level of data corruption. We ran RMAN validate command to scan the database for corruption but it returned with no errors, however he
    Alert Log in Oracle is still coming up with the following error. Has anyone experienced this error when using Oracle Standard Edition and SQL 2012 ?
    Trace file e:\app\pulse-ad\diag\rdbms\orcl\orcl\trace\orcl_ora_5992.trc
    Oracle Database 11g Release 11.1.0.7.0 - 64bit Production
    Windows Server 2003 Version V5.2 Service Pack 2
    CPU                 : 4 - type 8664, 4 Physical Cores
    Process Affinity    : 0x0000000000000000
    Memory (Avail/Total): Ph:6782M/24575M, Ph+PgF:12203M/30844M
    Instance name: orcl
    Redo thread mounted by this instance: 1
    Oracle process number: 151
    Windows thread id: 5992, image: ORACLE.EXE (SHAD)
    *** 2013-12-12 03:04:33.655
    *** SESSION ID:(1281.3832) 2013-12-12 03:04:33.655
    *** CLIENT ID:() 2013-12-12 03:04:33.655
    *** SERVICE NAME:(orcl) 2013-12-12 03:04:33.655
    *** MODULE NAME:(xdbcdcsvc.exe) 2013-12-12 03:04:33.655
    *** ACTION NAME:() 2013-12-12 03:04:33.655
    Lost-write detected for sequence 70856. The lost-write starts occurring in block 11193. The current block being validating is 12930.
    Block dump of the first lost-write block:
    Flag: 0x1 Format: 0x22 Block: 0x00002bb9 Seq: 0x000114bf Beg: 0x94 Cks:0x68ee
    Dump of memory from 0x0000000598D06C00 to 0x0000000598D06E00
    598D06C00 00002201 00002BB9 000114BF 68EE8094  [."...+.........h]
    598D06C10 00085BF1 0023BDA1 000DE19C 000DE19C  [.[....#.........]
    598D06C20 0000000C 00000000 2209160A 5BF10000  [..........."...[]
    598D06C30 3EB10502 00C0F5CA 0031BDA1 00010205  [...>......1.....]
    598D06C40 02B22C6A 038A6D69 00000001 00000000  [j,..im..........]
    598D06C50 4D554407 30373230 35BB0206 001100AE  [.DUM0270...5....]
    598D06C60 0001040A 000D000E 038A6D69 56B25735  [........im..5W.V]
    598D06C70 729C0003 E19C0001 000C0006 000D0006  [...r............]
    598D06C80 02BB0502 00C0F5CD 0023BDA1 000A0002  [..........#.....]
    598D06C90 00C00013 000000D0 00030201 56B25736  [............6W.V]
    598D06CA0 03890001 00000000 00000000 002E0105  [................]
    598D06CB0 FFFF0003 00C0F5CD 56B25736 3EB10003  [........6W.V...>]
    598D06CC0 FFFF0024 0014000C 000C0018 00120014  [$...............]
    598D06CD0 09CC0058 E75B0022 0009000F 00085BF1  [X...".[......[..]
    598D06CE0 0024BDA1 000DE19D 000DE19D 0000000C  [..$.............]
    598D06CF0 00000000 2309160A 5BF10000 3EB10502  [.......#...[...>]
    598D06D00 00C0F5CD 0020BDA1 00010205 02B22C72  [...... .....r,..]
    598D06D10 03900974 00000019 00000000 3030300A  [t............000]
    598D06D20 33303030 06323132 AE35BB02 0B441100  [0003212...5...D.]
    598D06D30 0001040A 000D000E 03900974 56B25736  [........t...6W.V]
    598D06D40 729C0003 E19D0011 000C0006 000D0006  [...r............]
    598D06D50 02BB0502 00C0F5CD 0024BDA1 00EA0002  [..........$.....]
    598D06D60 00270016 000001FC 00032C01 56B25736  [..'......,..6W.V]
    598D06D70 00000001 00000000 30393007 002E0105  [.........090....]
    598D06D80 FFFF0003 00C0F5CD 56B25736 00000003  [........6W.V....]
    598D06D90 FFFF0025 00140052 000C0018 00070035  [%...R.......5...]
    598D06DA0 0003000A 00070003 0001001D 00030001  [................]
    598D06DB0 00010001 00010001 00010001 00010001  [................]
    598D06DC0 00010001 00010001 00010001 00010001  [................]
    598D06DD0 00010001 00000001 00010001 00010001  [................]
    598D06DE0 00010001 00000014 09720174 00000022  [........t.r."...]
    598D06DF0 0009000F 00085BF1 0025BDA1 000DE19A  [.....[....%.....]
    Block dump of the current block being validating:
    Flag: 0x1 Format: 0x22 Block: 0x00003282 Seq: 0x000114c8 Beg: 0x0 Cks:0x312a
    Dump of memory from 0x0000000598DDFE00 to 0x0000000598DE0000
    598DDFE00 00002201 00003282 000114C8 312A8000  [."...2........*1]
    598DDFE10 50424703 31303607 34353335 69745319  [.GBP.6015354.Sti]
    598DDFE20 6E696C72 72502067 6375646F 4C207374  [rling Products L]
    598DDFE30 4E206474 C3025650 0380013D 0457454E  [td NPV..=...NEW.]
    598DDFE40 4E1E09C2 1E09C204 10C2024E 1E09C204  [...N....N.......]
    598DDFE50 09C2044E C2024E1E 03C30510 021B0929  [N....N......)...]
    598DDFE60 C3053DC3 0F192602 2602C305 C3050F19  [.=...&.....&....]
    598DDFE70 0C1A6203 5102C105 C2041F4E 044E1E09  [.b.....QN.....N.]
    598DDFE80 4E1E09C2 0410C202 4E1E09C2 1E09C204  [...N.......N....]
    598DDFE90 10C2024E 2903C305 78071B09 011D0B71  [N......)...xq...]
    598DDFEA0 BF020101 1FBF0215 4E018001 53014E01  [...........N.N.S]
    598DDFEB0 0723002C 0B0C7178 0A3C3C18 30303030  [,.#.xq...<<.0000]
    598DDFEC0 33373030 4D033337 47034255 36075042  [007373.MUB.GBP.6]
    598DDFED0 38333936 4E113331 2065776B 74616C50  [693813.Nkwe Plat]
    598DDFEE0 6D756E69 56504E20 0B0AC303 4E038001  [inum NPV.......N]
    598DDFEF0 C2045745 0459512E 59512EC2 5253C203  [EW...QY...QY..SR]
    598DDFF00 512EC204 2EC20459 C2035951 C3055253  [...QY...QY..SR..]
    598DDFF10 1B092903 0B0AC303 3C04C305 C3053239  [.).........<92..]
    598DDFF20 32393C04 4F08C305 C105114F 1F4E5102  [.<92...OO....QN.]
    598DDFF30 512EC204 2EC20459 C2035951 C2045253  [...QY...QY..SR..]
    598DDFF40 0459512E 59512EC2 5253C203 2903C305  [.QY...QY..SR...)]
    598DDFF50 78071B09 01190A71 C0030101 C0034709  [...xq........G..]
    598DDFF60 8001330A 4E014E01 002C5301 71780723  [.3...N.N.S,.#.xq]
    598DDFF70 3C180B0C 30300A3C 30303030 33373337  [...<<.0000007373]
    598DDFF80 42554D03 50424703 31304207 344C5131  [.MUB.GBP.B011QL4]
    598DDFF90 6F725020 63657073 614A2074 206E6170  [ Prospect Japan ]
    598DDFFA0 646E7546 64724F20 44535520 30302E30  [Fund Ord USD0.00]
    598DDFFB0 04C30331 03800133 0557454E 5B1603C3  [1...3...NEW....[]
    598DDFFC0 03C30521 04215B16 1F4004C3 1603C305  [!....[!...@.....]
    598DDFFD0 C305215B 215B1603 4004C304 03C3051F  [[!....[!...@....]
    598DDFFE0 031B0929 043304C3 4D245AC2 245AC204  [).....3..Z$M..Z$]
    598DDFFF0 02C3054D 040A1A18 494002C1 1603C305  [M.........@I....]
    *** 2013-12-12 03:05:07.984
    ** LOGMINER WARNING - Invalidated 6 LCRs **
    Complete dump of first invalid START LCR follows:
    ++  LCR Dump Begin: 0x0000000532C004E0 - CANNOT_SUPPORT
         op: 255, Original op: 3, baseobjn: 0, objn: 233316, objv: 1
         DF: 0x00000002, DF2: 0x00000000, MF: 0x00000000, MF2: 0x00000000
         PF: 0x40000001, PF2: 0x00002000
         MergeFlag: 0x00, FilterFlag: 0x00
         Id: 0, iotPrimaryKeyCount: 3, numChgRec: 4
         NumCrSpilled: 0
         RedoThread#: 1, rba: 0x0114c8.0001c6ce.00d4
         scn: 0x0003.56b593be, xid: 0x0008.00c.00100d85, pxid: 0x0008.00c.00100d85
         ncol: 0newcount: 0, oldcount: 0
         LUBA: 0x3.c109c0.c.15.38f64
    Thanks
    Dee

    Hi Dee,
    Thank you for your question.
    I am trying to involve someone more familiar with this topic for a further look at this issue. Sometime delay might be expected from the job transferring. Your patience is greatly appreciated.
    Thank you for your understanding and support.
    Regards,
    Mike Yin
    TechNet Community Support

  • 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.

  • Help on block corruption (URGENT ...!)

    Hi all.
    I have a Oracle 10g Rel1 database on a linux box who is presenting block corruption at the system tablespace level.
    This database IS NOT in archive mode.
    Message says:
    ORA-01578: bloque de datos ORACLE corrupto (archivo numero 1, bloque numero *47132*)
    ORA-01110: archivo de datos *1: '/u01/oradata/BADAN1/BADAN1/system01.dbf'*
    This script is suppose to tell me which is the segment holding corrupted block:
    SQL> SELECT e.file_id,
    2 e.block_id,
    3 e.owner,
    4 e.segment_name,
    5 e.segment_type
    6 FROM dba_extents e
    7 WHERE
    8 file_id=1 and 47132 BETWEEN 47132 AND 47132 + blocks - 1
    9 /
    FROM dba_extents e
    ERROR at line 6:
    ORA-01578: ORACLE data block corrupted (file # 1, block # 47132)
    ORA-01110: data file 1: '/u01/oradata/BADAN1/BADAN1/system01.dbf'
    It seems base tables associated with dba_extents view are related in this case:
    select ds.owner, ds.segment_name, ds.partition_name, ds.segment_type,
    ds.tablespace_name,
    e.ext#, f.file#, e.block#, e.length * ds.blocksize, e.length, e.file#
    from sys.uet$ e, sys.sys_dba_segs ds, sys.file$ f
    where e.segfile# = ds.relative_fno
    and e.segblock# = ds.header_block
    and e.ts# = ds.tablespace_id
    and e.ts# = f.ts#
    and e.file# = f.relfile#
    and bitand(NVL(ds.segment_flags,0), 1) = 0
    and bitand(NVL(ds.segment_flags,0), 65536) = 0
    union all
    select /*+ ordered use_nl(e) use_nl(f) */
    ds.owner, ds.segment_name, ds.partition_name, ds.segment_type,
    ds.tablespace_name,
    e.ktfbueextno, f.file#, e.ktfbuebno,
    e.ktfbueblks * ds.blocksize, e.ktfbueblks, e.ktfbuefno
    from sys.sys_dba_segs ds, sys.x$ktfbue e, sys.file$ f
    where e.ktfbuesegfno = ds.relative_fno
    and e.ktfbuesegbno = ds.header_block
    and e.ktfbuesegtsn = ds.tablespace_id
    and e.ktfbuesegtsn = f.ts#
    and e.ktfbuefno = f.relfile#
    and bitand(NVL(ds.segment_flags, 0), 1) = 1
    and bitand(NVL(ds.segment_flags,0), 65536) = 0
    Please anybody advise on what to do ...!
    Regards, Luis ...!

    myluism wrote:
    Hi all.
    I have a Oracle 10g Rel1 database on a linux box who is presenting block corruption at the system tablespace level.
    This database IS NOT in archive mode.
    Message says:
    ORA-01578: bloque de datos ORACLE corrupto (archivo numero 1, bloque numero *47132*)
    ORA-01110: archivo de datos *1: '/u01/oradata/BADAN1/BADAN1/system01.dbf'*
    This script is suppose to tell me which is the segment holding corrupted block:
    SQL> SELECT e.file_id,
    2 e.block_id,
    3 e.owner,
    4 e.segment_name,
    5 e.segment_type
    6 FROM dba_extents e
    7 WHERE
    8 file_id=1 and 47132 BETWEEN 47132 AND 47132 + blocks - 1
    9 /
    FROM dba_extents e
    ERROR at line 6:
    ORA-01578: ORACLE data block corrupted (file # 1, block # 47132)
    ORA-01110: data file 1: '/u01/oradata/BADAN1/BADAN1/system01.dbf'That query doesn't look right to me. Try this:
    SELECT e.file_id,
    e.block_id,
    e.owner,
    e.segment_name,
    e.segment_type
    FROM dba_extents e
    WHERE
    file_id=1  and 47132 BETWEEN block_id  AND block_id + blocks - 1
    /Let us know the result of that query.
    -Mark

Maybe you are looking for