Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Help investigating block corruption
I'm investigating a recent case of block corruption and have a couple
of questions:-
First, can I use dbv against an online database? The documentation says offline, but I've seen several posts that suggest that it can sometimes be used against an online database, depending on OS and Oracle version - I'm running Solaris 8 and Oracle 8.1.7. Incidentally, the results I get from dbv are the same whether the database is online or offline.
Second, the corruptions are reported in an almost contiguous set of blocks in one of the user datafiles:-
Page 6599 is marked corrupt
***
Corrupt block relative dba: 0x024019c7 (file 0, block 6599)
Completely zero block found during dbv:
Page 6600 is marked corrupt
***
Corrupt block relative dba: 0x024019c8 (file 0, block 6600)
Completely zero block found during dbv:
Page 6601 is marked corrupt
***
Corrupt block relative dba: 0x024019c9 (file 0, block 6601)
Completely zero block found during dbv:
... etc...
All the corrupt block reports state that a 'completely zero block' has been found.
My understanding is that I need to examine dba_extents in order to
find out
which objects utilise(d) the affected blocks.
Running the query...
SELECT segment_name, segment_type, owner, tablespace_name FROM sys.dba_extents WHERE file_id=0 AND block_id BETWEEN 6598 and 6793;
... returns zero rows.
I also tried...
SELECT * FROM sys.dba_free_space WHERE file_id=0 AND block_id BETWEEN 6598 and 6793;
but that returns zero rows as well.
Can anyone point out what I'm doing wrong.
Thanks,
Mike Received on Thu Jul 08 2004 - 06:01:17 CDT
![]() |
![]() |