Showing posts with label Oracle Database:Corruptions. Show all posts
Showing posts with label Oracle Database:Corruptions. Show all posts

Sunday, July 3, 2011

ORA-01578: ORACLE data block corrupted on a Dictionary Table

Visit the Below Website to access unlimited exam questions for all IT vendors and Get Oracle Certifications for FREE
http://www.free-online-exams.com

Problem Description: ORA-01578: ORACLE data block corrupted  


We got the corruption on “trigger$” table in system tablespace,

 dbv found one block got corrupted.
 database got crashed and unable to start.
trigger$ table got corrupted,we used _system_enabled_trigger=false
 We can use hidden parameter _system_enabled_trigger=False and restarted the database.

Alert log file:

Mon Apr 27 15:06:01 2009
Errors in file /bdump/sid_ora_19549.trc:
ORA-12012: error on auto execute of job 7382
ORA-01578: ORACLE data block corrupted (file # 3, block # 91063)
ORA-01110: data file 3: '/system03.dbf'
Mon Apr 27 15:07:02 2009
MMON: terminating instance due to error 472
Instance terminated by MMON, pid = 7586


Solution:

When a dictionary table is corrupted the only valid option is restoring and recovering from a backup besides there is no way to recreate the dictionary

Can’t use DBMS_REPAIR against dictionary tables
Information at dictionary level cannot be ignored. It could cause other issues. Using DBMS_REPAIR against dictionary tables causes logical dictionary corruption

    

Get Oracle Certifications for all Exams
Free Online Exams.com

Wednesday, June 29, 2011

ORA-01578: ORACLE data block corrupted (file # 1, block # 26894)

Visit the Below Website to access unlimited exam questions for all IT vendors and Get Oracle Certifications for FREE
http://www.free-online-exams.com

Problem:

Errors in file /admin/bdump/sid_smon_14277.trc:
ORA-01578: ORACLE data block corrupted (file # 1, block # 26894)
ORA-01110: data file 1: '/u02/oradata/prd10/data/system01.dbf'
Sat Jan 24 20:50:12 2009

CAUSE JUSTIFICATION
===================
Corruption in system datafile
One of the Cluster C_TOID_VERSION# in SYS schema is got corrupt,

PROPOSED SOLUTION(S)
====================
Need to skip the corrupt and take a full database export

PROPOSED SOLUTION JUSTIFICATION(S)
==================================
This object cant be recreated

SOLUTION / ACTION PLAN
======================
-- To implement the solution, please execute the following steps::
Unfortunately, it cannot be Dropped and Recreated because they are an number
underlying tables associated with it and they cannot be Dropped as it is not supported.

SQL> select table_name from dba_tables where cluster_name='C_TOID_VERSION#';

TABLE_NAME
------------------------------
TYPE$
COLLECTION$
ATTRIBUTE$
METHOD$
PARAMETER$
RESULT$

However, perform an Analyze on the cluster and each of the tables to verify the
corruption. But you said you did this and showed error right

object=C_TOID_VERSION# which is a segment cluster. This is a boot
strap object for Oracle, so it cannot be dropped or truncated to remove the
corruption.


You must be aware that your option may be limited here dur to the corruption in
the system datafile. You may have to either restore from a backup and roll forward,
or you are able, you may have to export the database, then rebuild it.

If restore and recovery is not possible due to no backups then
Try settting the Event 10231 and perform a complete full database export.
once the full database export is completed recreate the database using the
export dump.

Usage:

Event="10231 trace name context forever, level 10".

After setting this event in the init.ora restart the database.
then you can do a full database export . This event will allow to skip
corrupted blocks.

This should be removed from the instance parameters immediately after it has
been used.
Get Oracle Certifications for all Exams
Free Online Exams.com