ORA-01578 ORACLE data block corrupted (file # string, block # string) Cause: The data block indicated was corrupted, probably due to program errors.Action: Determine which object was corrupted using a command like the following: SELECT SEGMENT_TYPE,OWNER||'.'||SEGMENT_NAME FROM DBA_EXTENTSWHERE file = FILE_ID AND block BETWEEN BLOCK_ID AND BLOCK_ID+BLOCKS -1;where values for file and block are from the message. Try to restore the segment containing the block indicated. This may involve dropping the segment and re-creating it. If there is a trace file, report the errors in it to Oracle Customer Support.
Doc ID: Note:18976.1
Subject: OERR: ORA-1578 "ORACLE data block corrupted (file # %s, block # %s)"
Type: REFERENCE
Status: PUBLISHED
Content Type: TEXT/PLAIN
Creation Date: 02-MAR-1995
Last Revision Date: 03-JAN-2001
Error: ORA-1578
Text: ORACLE data block corrupted (file # %s, block # %s)
-------------------------------------------------------------------------------
Cause: The data block indicated was corrupted, mostly due to software
errors.
Action: Try to restore the segment containing the block indicated. This
may involve dropping the segment and recreating it. If there
is a trace file, report the errors in it to your ORACLE
representative.
*** Important: The notes below are for experienced users - See [NOTE:22080.1]Explanation:
ORA-1578 is reported when a block is thought to be corrupt on read.
Note that in Oracle8i the ORA-1578 reports the RELATIVE FILE NUMBER
and not the ABSOLUTE FILE NUMBER. The error should be accompanied
by an ORA-1110 error indicating the absolute file number and name.Diagnosis:
a) Check for any ORA-600 errors in the ALERT and TRACE files.
b) If the DB is open try to identify the corrupt object thus: SELECT segment_name , segment_type , owner , tablespace_name
FROM sys.dba_extents
WHERE file_id = &bad_file_id
AND &bad_block_id BETWEEN block_id and block_id + blocks -1 (&bad_file_id is the ABSOLUTE file number in Oracle8) c) This error is normal if accessing a block which has had
a NOLOGGING (or UNRECOVERABLE) operation performed against
it and has since been recovered. In Oracle8i this case also
reports:
"ORA-26040: Data block was loaded using the NOLOGGING option" Actions:
If the ORA-1578 is preventing database STARTUP see the
"ORA-1578 on Startup" section of [NOTE:106638.1] If the ORA-1578 is on a Rollback segment see [NOTE:106638.1] For any other ORA-1578 situation see [NOTE:28814.1]
Articles:
Handling Block Corruptions in Oracle7/8/8i
另外,805上怎么没有dbms_repire包???
那我怎么恢复数据,唉,oracle真麻烦