Thursday, November 14, 2019

ORA-00204:ORA-00202:ORA-27070:OSD-04006:O/S-Error:/Database not able to startup showing an error in reading control file

Database not able to startup showing an error in reading control file with following error
ORA-00204:ORA-00202:ORA-27070:OSD-04006:

ORA-00204: error in reading (block 3, # blocks 8) of control file                     
ORA-00202: control file: 'E:\oracle\ORADATA\LOCAL\CONTROL01.CTL'                       
ORA-27070: async read/write failed                                                     
OSD-04006: ReadFile() failure, unable to read from file                               
O/S-Error: (OS 1117) The request could not be performed because of an I/O device error.


When I startup the database getting the following error:


SQL> startup
ORACLE instance started.

Total System Global Area 3206836224 bytes
Fixed Size                  2180024 bytes
Variable Size            1996491848 bytes
Database Buffers         1191182336 bytes
Redo Buffers               16982016 bytes
ORA-00204: error in reading (block 3, # blocks 10) of control file
ORA-00202: control file: 'E:\oracle\ORADATA\LOCAL\CONTROL01.CTL'
ORA-27070: async read/write failed
OSD-04006: ReadFile() failure, unable to read from file
O/S-Error: (OS 1117) The request could not be performed because of an I/O device error.

try to shutdown the database and do the following steps:

Shutdown immediate;
Startup or startup nomount;

If you get this kind of error while starting the database or try to mount the database then need to check the control file. are you able to access the control file path.?

to check the control file location stater the database with no mount state and use the below command

show parameter contrl

you may see the following path which have the control file locations.

SQL> show parameter control

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time        integer     7
control_files                        string      E:\ORACLE\ORADATA\LOCAL\CONTRO
                                                 L01.CTL, C:\APP\ADMINISTRATOR\
                                                 FLASH_RECOVERY_AREA\LOCAL\CONT
                                                 ROL02.CTL
control_management_pack_access       string      DIAGNOSTIC+TUNING
SQL>


Conclusion :
The above error says control file may be corrupt.
So you need to start the database using contril2.ctl or you can copy the cocntrol2.ctl and rename to control1.ctl

and try to startup the database.