ORA-00201: control file version 12.1.0.2.0 incompatible with ORACLE version 11.2.0.0.0

oracleredhatsqlplus

I'm trying to mount my database but sqlplus returned the following error :

SQL> startup
ORACLE instance started.

Total System Global Area 1073741824 bytes
Fixed Size                  2932632 bytes
Variable Size             679477352 bytes
Database Buffers          385875968 bytes
Redo Buffers                5455872 bytes
ORA-00201: control file version 12.1.0.2.0 incompatible with ORACLE version
11.2.0.0.0
ORA-00202: control file: '/oracle/product/12.1.0/dbhome_1/control01.ctl'

I know that the official documentation said :

Action: Either restart with a compatible software release or use CREATE CONTROLFILE to create a new control file that is compatible with this release.

So I would like to create my new control file with the following code :

create controlfile reuse database "ORCL" NORESETLOGS NOARCHIVELOG
MAXLOGFILES 255
MAXLOGMEMBERS 2
MAXDATAFILES 256
MAXINSTANCES 1
MAXLOGHISTORY 1134
LOGFILE
GROUP 1 '/oracle/oradata/local/redo01.log' size 20M,
GROUP 2 '/oracle/oradata/local/redo02.log' size 20M
DATAFILE
'/oracle/oradata/local/DEVELOPMENT.dbf',
'/oracle/oradata/local/DEVIL_INDEX.dbf',
'/oracle/oradata/local/example01.dbf',
'/oracle/oradata/local/syseaux01.dbf',
'/oracle/oradata/local/system01.dbf',
'/oracle/oradata/local/temp01.dbf',
'/oracle/oradata/local/undotbs01.dbf',
'/oracle/oradata/local/users01.dbf'
CHARACTER SET AL32UTF8;

and when I execute that on sqlplus it returned me the following error :

SQL> @/oracle/scripts/create_controlfiles.sql
create controlfile reuse database "ORCL" NORESETLOGS NOARCHIVELOG
*
ERROR at line 1:
ORA-01503: CREATE CONTROLFILE failed
ORA-01210: data file header is media corrupt
ORA-01110: data file : '/oracle/oradata/local/DEVELOPMENT.dbf'
ORA-01130: database file version 12.1.0.2.0 incompatible with ORACLE version
11.2.0.0.0
ORA-01110: data file 2: '/oracle/oradata/local/DEVELOPMENT.dbf'

So

  • my database files seems to be configured for oracle 12.1.0 (which is my current oracle version 12c) but not compatible with older version.
  • my control file seems to be configured for oracle 11.2.0 so not compatible with my current version.

Any suggestion ?

Best Answer

(I accept that this is not quite technically accurate, but is close enough)

The error message is telling you that the database was created in a higher version than the one you are trying to open it in. All the database files are marked with this version.

This database was created in v12, you're trying to open it in v11. This will not work. There is nothing you can do except use a v12 database home to mount/open the database.

It is possible to create a database in v12 which is compatible with v11, by using the COMPATIBLE parameter. This tells the database engine what version the database should remain compatible with, and what database features to use.

Related Question