Home > Oracle DBA > Demystifying COMPATIBLE Initialization Parameter.

Demystifying COMPATIBLE Initialization Parameter.

April 24, 2013

The COMPATIBLE initialization parameter enables or disables the use of features in the database that affect file format on disk. For example, if you create an Oracle Database 11g Release 1 (11.1) database, but specify COMPATIBLE = 10.0.0 in the initialization parameter file, then features that requires 11.1 compatibility generate an error if you try to use them. Such a database is said to be at the 10.0.0 compatibility level.

You can advance the compatibility level of your database. If you do advance the compatibility of your database with the COMPATIBLE initialization parameter, there is no way to start the database using a lower compatibility level setting, except by doing a point-in-time recovery to a time before the compatibility was advanced.

The default value for the COMPATIBLE parameter is the release number of the most recent major release.

Few points on compatible:-

1) How many digits are important when setting compatible init parameter? What is the difference between setting it to 10.2.0, and Are all of the digits in the compatible parameter important? Can I keep compatible set to 10.2.0 for all releases of 10gR2?

Answer:  Yes, the number of digits is meaningful, and many shops use less digits to make distributed communications easy between instances on different sub releases using compatible=10.2.

2) Here is the mapping for the compatible parameter digits:

Oracle Database Release Default Value Minimum Value Maximum Value
Oracle8i release 8.1.7 8.0.0 8.1.7.x.x
Oracle9i release 9.0.1 8.1.0 9.0.1.x.x
Oracle9i release 9.2 8.1.0 9.2.0.x.x
Oracle Database 10g release 10.1 10.0.0 10.1.0.x.x
Oracle Database 10g release 10.2 10.2.0 10.2.0.x.x
Oracle 11g Release 11.1 11.0.0 11.1.0.x.x
Oracle 11g Release 11.2 11.0.0 11.2.0.x.x
Categories: Oracle DBA
%d bloggers like this: