Send me the dbv's of each of the corrupted files. A trace dump and a dd dump of each corrupt block labled appropriately so I know which is which. A trace dump and dd dump of the first 10 blocks of user file 1.
We also might try a single datafile recovery on another server of just the system datafile so we can get the real file names and data dictionary information for the database.
-- --Original Message-- -- From: oracle-l-bounce@(protected) [mailto:oracle-l-bounce@(protected)] On Behalf Of jost@(protected) Sent: Tuesday, September 06, 2005 3:00 AM To: oracle-l@(protected) Subject: Re: Reading corrupted Datafiles offline
On Tuesday 06 September 2005 08:42, Parker, Matthew wrote: > As Jim mentioned there is the DUL (Data Unloader ) tool that Oracle > consulting can use for you. The normal stated accuracy is 99% depending on > your system. It never understood how to follow chained rows. You are lucky > to be on 8.1.6 as they never updated the tool to 9i/10g according to the > developer, ( a project sometime in the future for him). > > Give us so more details about what exactly happened and what you have of > your database, then we may be able to help you.
hi,
here first the short version of what was happend.
First off all, the database belongs to a small customer of our company. This customer doesn't take care of the backup what we have learned the hard way.
After a harddisk failure, which was not recoverable, some datafiles get lost, other datafile get corrupted and some are totally ok.
Controlfiles are lost System - Datafile is good Rollback is totally lost Redo Logs are good Temp is good User_Data was a bunch of 6 Files File 1 is good File 2 is corrupted (4 Blocks including Block# 1) File 3 is corrupted (1 Block) File 4 is corrupted (2 Blocks including Block# 1) File 5 is corrupted (48 Blocks including Block# 1) File 6 is missing
A Problem is, that we are not able to determine the right filename for some of the files. The corrupted ones are the result of the recover of the bad hard - disk. The original filename was lost, so we are unable to get the right filename. Unfortunatly dbv is not giving the filename or filenumber as a result of the offline check.
My intention is now to read or even export the data, which is included in the datafiles of the tablespace USER_DATA.
Because of the missing controlfiles, i try to create new ones with the following SQL:
STARTUP NOMOUNT CREATE CONTROLFILE REUSE SET DATABASE SCHU RESETLOGS NOARCHIVELOG MAXLOGFILES 32 MAXLOGMEMBERS 2 MAXDATAFILES 254 MAXINSTANCES 8 MAXLOGHISTORY 907 LOGFILE GROUP 1 '/pro1/oradata/SCHU/redo01.log' SIZE 10M, GROUP 2 '/pro1/oradata/SCHU/redo02.log' SIZE 10M, GROUP 3 '/pro1/oradata/SCHU/redo03.log' SIZE 10M DATAFILE '/pro1/oradata/SCHU/system01.dbf', '/pro1/oradata/SCHU/temp01.dbf', '/pro1/oradata/SCHU/usr1SCHU.dbf', '/pro1/oradata/SCHU/usr2SCHU.ora', '/pro1/oradata/SCHU/usr3SCHU.ora', '/pro1/oradata/SCHU/usr4SCHU.ora', '/pro1/oradata/SCHU/usr5SCHU.ora' CHARACTER SET WE8PC850 ;
The init.ora includes the parameter _allow_resetlogs_corruption=true
The above mentioned SQL fails with the following error: