sexta-feira, setembro 01, 2006

Orace 9i: How to recover from error ORA-27041: unable to open file

The error:


*** 2006-05-29 17:41:40.000
*** SESSION ID:(2.1) 2006-05-29 17:41:40.000
ORA-01157: cannot identify/lock data file 11 - see DBWR trace file
ORA-01110: data file 11: 'O:\ORACLE\ORA921\DATABASE\HISTORICO1'
ORA-27041: unable to open file
OSD-04002: incapaz de abrir o ficheiro
O/S-Error: (OS 2) The system cannot find the file specified.


1)
SQL> ALTER DATABASE BACKUP CONTROLFILE TO TRACE;

The trace file is created in the location specified by the USER DUMP DEST initialization parameter.


2)
SHUTDOWN DATABASE;

STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "DBMRK" NORESETLOGS NOARCHIVELOG
-- SET STANDBY TO MAXIMIZE PERFORMANCE
MAXLOGFILES 50
MAXLOGMEMBERS 5
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 'O:\ORACLE\ORADATA\DBMRK\REDO01.LOG' SIZE 100M,
GROUP 2 'O:\ORACLE\ORADATA\DBMRK\REDO02.LOG' SIZE 100M,
GROUP 3 'O:\ORACLE\ORADATA\DBMRK\REDO03.LOG' SIZE 100M
-- STANDBY LOGFILE
DATAFILE
'O:\ORACLE\ORADATA\DBMRK\SYSTEM01.DBF',
'O:\ORACLE\ORADATA\DBMRK\UNDOTBS01.DBF',
'O:\ORACLE\ORADATA\DBMRK\CWMLITE01.DBF',
'O:\ORACLE\ORADATA\DBMRK\DRSYS01.DBF',
'O:\ORACLE\ORADATA\DBMRK\INDX01.DBF',
'O:\ORACLE\ORADATA\DBMRK\ODM01.DBF',
'O:\ORACLE\ORADATA\DBMRK\TOOLS01.DBF',
'O:\ORACLE\ORADATA\DBMRK\USERS01.DBF',
'O:\ORACLE\ORADATA\DBMRK\XDB01.DBF',
'O:\ORACLE\ORA921\DATABASE\HISTORICO1',
'O:\ORACLE\ORA921\DATABASE\DF_HISTORICO'
CHARACTER SET WE8MSWIN1252
;
# Take files offline to match current control file.
ALTER DATABASE DATAFILE 'O:\ORACLE\ORADATA\DBMRK\.ORA' OFFLINE DROP;
# Recovery is required if any of the datafiles are restored backups,
# or if the last shutdown was not normal or immediate.
RECOVER DATABASE
# Database can now be opened normally.
ALTER DATABASE OPEN;

Sem comentários: