ORA-00205: error in identifying control file, check alert log for more info

To demonstrate this error, I have intentionally deleted control file (i.e.control02.ctl)

And try to startup database to stimulate exact error:

SQL> startup
ORACLE instance started.
Total System Global Area 755769344 bytes
Fixed Size 2217184 bytes
Variable Size 478153504 bytes
Database Buffers 272629760 bytes
Redo Buffers 2768896 bytes
ORA-00205: error in identifying control file, check alert log for more info

database throws ORA-00205 error as expected due to one of the control file not in place.

Solution:

Ensure existing control file locations with following:

SQL> show parameter control_files
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_files                        string      /u01/app/oracle/oradata/RTS/co
                                                 ntrol01.ctl, /u01/app/oracle/o
                                                 radata/RTS/control02.ctl

There are 2 control files mentioned in CONTROL_FILES parameter, Ensure which control file is not available.

[oracle@PR]$ ll /u01/app/oracle/oradata/RTS/control01.ctl
-rw-r-----. 1 oracle oinstall 9748480 Jun 24 03:37 /u01/app/oracle/oradata/RTS/control01.ctl
[oracle@PR]$ ll /u01/app/oracle/oradata/RTS/control02.ctl
ls: cannot access /u01/app/oracle/oradata/RTS/control02.ctl: No such file or directory

So, control02.ctl is not available, issue following alter command in order to edit only one control file location in CONTROL_FILES parameter.

SQL> alter system set control_files='/u01/app/oracle/oradata/RTS/control01.ctl' scope=spfile;
System altered.

Shutdown the database and start it up:

SQL> shut immediate;
ORA-01507: database not mounted
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 755769344 bytes
Fixed Size 2217184 bytes
Variable Size 478153504 bytes
Database Buffers 272629760 bytes
Redo Buffers 2768896 bytes
Database mounted.
Database opened.

The database is opened with one control file:

SQL> show parameter control_files; 
NAME                                 TYPE        VALUE 
------------------------------------ ----------- ------------------------------ 
control_files                        string      /u01/app/oracle/oradata/RTS/control01.ctl

Cheers!!

It is highly recommended to run your Oracle database with multiple control files(called control file multiplexing) in order to reduce the risk of losing control file due to corruption, accidental removal or any possible worst. How to multiplex Oracle control file?

Thanks, Stay Tune. 🙂

2 thoughts on “ORA-00205: error in identifying control file, check alert log for more info

  1. when you tried to open the DB it threw error unable to access control file.
    Then in the solution how you got to SQL prompt and typed show parameter control_file.
    Because database was yet not even mounted, So SQL command should not work… please explain…

    • Thanks Shubham for writing!
      When DB threw unable to access control file, that time DB in nomount mode, and you can access parameter information when you are in nomount mode.

Leave a Reply

%d bloggers like this: