Friday, June 4, 2010

How to change compatible parameter in Oracle

Overview of Compatible parameter
Oracle compatible parameter is a string data type parameter and value of this parameter is oracle database version. It can take value as 11.1.0.7, 11.1.0.6, 10.2.0.4, 10.2.0.3, 10.1.0.5, 10.1.0.4, 9.2.0.8, 9.0.1.4, 8.1.7.4 etc. This parameter controls the database behavior for example whether a feature will work for a database. For example if database version is 10.2.0.4 but compatible parameter is set to 9.2 then certain feature like RMAN compression will not work.

After the database upgrade, if the compatible parameter is set to database version then new feature stores any data on disk (including data dictionary changes) that cannot be processed with your previous release. However after upgrade if compatible parameter is not changed then new feature of the upgraded version will not be available.

Default, minimum and maximum value of compatible parameter
Here goes the compatible parameter default, minimum and maximum values based on oracle database version.



Oracle Database Release

Default Value

Minimum Value

Maximum Value

Oracle Database 9i Release 2 (9.2)

8.1.0

8.1.0.0.0

9.2.0.n.n

Oracle Database 10g Release 1 (10.1)

10.0.0

9.2.0.0.0

10.1.0.n.n

Oracle Database 10g Release 2 (10.2)

10.2.0

9.2.0.0.0

10.2.0.n.n

Oracle Database 11g Release 1 (11.1)

11.0.0

10.0.0.0.0

11.1.0.n.n




In order to check your compatible parameter issue,
SQL> SELECT name, value, description FROM v$parameter WHERE name = 'compatible';

or if you use sql*plus issue,
SQL> show parameter compatible;

Steps to change compatible parameter
1) Perform full backup of your database (optional).
Before changing compatible parameter, you should take a full backup of your database. Because raising the COMPATIBLE initialization parameter may cause your database to become incompatible with earlier releases of the Oracle Database, and a backup ensures that you can return to the earlier release whenever you want.

2) If you are using spfile parameter to start up your database then complete the following things.

a. Update the server parameter file to set or change the value of the COMPATIBLE initialization parameter.
For example, to set the COMPATIBLE initialization parameter to 10.2.0, issue the following statement:
SQL> ALTER SYSTEM SET COMPATIBLE = '10.2.0' SCOPE=SPFILE;

b. Shut down and restart the instance.
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP


3) If you are using pfile parameter, then complete the following steps.

a. Shut down the instance if it is running:
SQL> SHUTDOWN IMMEDIATE

b. Edit the initialization parameter file to set or change the value of the COMPATIBLE initialization parameter.
For example, to set the COMPATIBLE initialization parameter to 10.2.0, enter the following in the initialization parameter file:
COMPATIBLE = 10.2.0

c. Start the instance using STARTUP.
SQL> STARTUP

Related Documents
http://arjudba.blogspot.com/2008/04/list-of-oracle-database-version-release.html
http://arjudba.blogspot.com/2008/04/oracle-database-editions.html
http://arjudba.blogspot.com/2008/04/oracle-products.html
http://arjudba.blogspot.com/2008/04/timeline-of-oracle-rdbms-major-release.html
http://arjudba.blogspot.com/2008/04/history-of-oracle-corporation.html
http://arjudba.blogspot.com/2008/10/list-of-patchset-number-in-metalink.html
http://arjudba.blogspot.com/2010/01/how-to-know-whether-patches-applied-to.html

No comments:

Post a Comment