"lopera" <prloperatechie.com> schrieb im Newsbeitrag
> Hi
> I have some block corruption issues with one of our databases, it
> happened 4 times in last 1.5 months, I am not sure if the underlaying
> disk is bad, actually I am not even sure which can be the bad disk since
> we are in RAID 0+1. Does anyone know how to find which physical disk is
> the datafile located providing I have the file# and block#? Something
> like a mapping from Oracle to physical hardware. I would like to know if
> all four corruptions occurs in same disk
> Also at Oracle level is there a way to tell weather we are facing
> logical block corruption or physical (media) corruption?
> Thanks in advance
I think that we need a bit more data here. Which OS are you running
(e.g. Solaris?)? What kind of Raid Software / Hardware are you running
(e.g. Veritas Volume Manager or Sun SDS, EMC)? What kind of
file system are you using (e.g. UFS, VFS).

The block corruption can actually be caused by ORACLE itself or if you
have bad luck (like I had a custumer site), you have bad EMC
box firmware.

With your block size, the block# and file# you can check which file
and which part of the file you have problems with. Did you already
run the oracle "dbv" utility on this file? To physically check the
file you might want to "dd if=the_file of=/dev/null seek=to_the_bad_block
count=the_full_db_block_in_fs_blocks". To calculate the parameters
you will have to check the OS block size and READ the dd manual
(if you are using a UNIX).

To actually find the disk in a raid config you will have to find
the blocks "logical" address on the virtual disk (you need the
file system information for this) and try to translate this into
the physical disk address (data from the RAID system needed for
this). This is complicated stuff. Maybe you find some tools on
the net that can do the calculation for you.

Have a nice day


Dipl.-Ing. Gregor J. Theis (3x ORACLE OCP DBA 8, 8i, 9i)
mailto:gregor.theisib-theis.de [url]http://www.ib-theis.de[/url]