This is in regards to "Input/Output errors" (31 Aug 05). You mentioned the use of the dbverify utility to check for errors in a datafile in this discussion.
Can we not also use RMAN to detect corrupt blocks and also to spot bad spots on disks? If we can use RMAN to cover...
both the above cases, what is the advantage/disadvantage of using RMAN vs. dbv? Thanks.
RMAN can be used to detect block corruption when performing a backup. There are also initialization parameters (like DB_BLOCK_CHECKING) which will detect block corruption on block access. There is nothing wrong with using these two techniques for detecting block corruption. The dbverify utility will check the entire datafile for block corruption on demand. You can fire up the dbverify utility and have it verify the datafile. Or, you can ensure that you perform a datafile backup with RMAN or read each and every block in the datafile with SQL statements for the other two options. Personally, when I need to verify blocks, it is easier to fire up one utility (dbv) to determine if corruption exists. The other two methods are primarily used to determine block corruption at other times so as to catch it as early as possible.