For our 10g Oracle database I had a script that would periodically create batch files to run DBVerify on all our datafiles. This way if I needed to check for corruption I would just have to run the batch files. After upgrading to Oracle 11g my batch files do not worked. I traced the problem down to dbv itself. Here is the command generated by the script:
dbv FILE=F:\ORACLE\ORADATA\CD\CAMPUSCHURCH1.DBF BLOCKSIZE=4096
LOGFILE='c:\DBVerify_COREDEV\CAMPUSCHURCH1_55.txt'
When I run this it gives a DBV-00100: Specified FILE (C:\Windows\system32/F:\ORACLE\ORADATA\CD\CAMPUSCHURCH1.DBF) not accessible. Note: The folder I am in is C:\Windows\system32. I can get it to work by switching to F:\ and removing F:\ from my dbv call, but I don't like that because then I'd have to change my script to switch to the proper drive before each dbv call.
Can anyone verify my findings and/or provide a solution?
it seems like a bug, regression from 10g... did a quick lookup in metalink and didn't find anything... How about opening an SR with a test case of 10g vs 11g? if it is a known issue, you might get a patch. If it isn't, they will hopefully fix it (eventually).
In a bit related note, you can consider using RMAN to check for physical and logical corruptions in your database. I believe it is better and more comprehensive check. For example,run rman VALIDATE CHECK LOGICAL DATABASE Check the docs here. If rman find block corruption, it populates v$database_block_corruption and you can then just use rman to recover the specific corrupted blocks. You can parallelize the RMAN VALIDATE by opening multiple channels...
I got the same on 11gR1on Windows 2008 x64!!