Oracle Upgrade issue

I had upgraded oracle databases from 10.2.0.3 to 10.2.0.4.  Everything completed correctly.  Prior to the upgrade the compatibilty parameter was set to 10.2.0.2.  I needed to put back some 'custom' parameters and at the same time changed the compatibily parameter to 10.2.0.
When bringing up the database i received the following error:
ORA-00201: control file version 10.2.0.2.0 incompatible with ORACLE version
10.2.0.0.0    ORA-00202: control file:

I put back the compatibility to 10.2.0.2 and it came up fine.  Any idea as to why this error occurred?
sqlnewbie08Asked:
Who is Participating?
 
johnsoneConnect With a Mentor Senior Oracle DBACommented:
Personally, I set it to whatever version of the database is running.  In your case, I would set it to 10.2.0.4.
0
 
mrjoltcolaCommented:
You cannot change it backwards, on the fly like that. You must set it prior to creating a database.

The compatibility param controls what Oracle can not only support in the instance, but also what it writes to disk, and it is the disk that is important in this case, it tracks it in the control file as well. Once the database is created, you cannot go backwards because Oracle might have written structures to disk that are incompatibile.

You can move it forward, but not backwards, without an export and import.
0
 
schwertnerCommented:
10.2.0.
is not a legal Oracle version
0
Cloud Class® Course: Microsoft Windows 7 Basic

This introductory course to Windows 7 environment will teach you about working with the Windows operating system. You will learn about basic functions including start menu; the desktop; managing files, folders, and libraries.

 
sqlnewbie08Author Commented:
The compatible parameter in our production databases is set to: '10.2.0', which based on documentation is valid.

I was upgrading an existing database from 10.2.0.3 to 10.2.0.4.  The database prior to the upgrade had compatible set to 10.2.0.2.  Afterwards, in order to gain the functionality of the new version, changed it to 10.2.0     That's when the error occurred.
0
 
johnsoneSenior Oracle DBACommented:
10.2.0 is less than 10.2.0.2.  As stated already, you cannot go backward.  To get all the functionality possible, compatible should be set to the database version, 10.2.0.4.
0
 
sqlnewbie08Author Commented:
Ok.. then why in our production envirnment is 10.2.0 working when the version is 10.2.0.3... just a little confused.  thanks!
0
 
johnsoneSenior Oracle DBACommented:
Did you change your it from 10.2.0.2 to 10.2.0 in production?
0
 
mrjoltcolaCommented:
>>then why in our production envirnment is 10.2.0 working when the version is 10.2.0.3..

Likely because it was 10.2.0 when you created your database, or either it was previously an even earlier version (8i or 9i perhaps) that was also upgraded and set to 10.2.0

Just because it runs with 10.2.0 in production is irrelevant, what is relevant is that you _changed_ a later version to 10.2.0.

The use of the compatible parameter is clear, it directs Oracle to or not to make use of certain features as well as _disk structures_ based on compatibility, so by definition moving _backwards_ is a problem, just like trying to open a 10.2.0.4 database with a 10.1.0 binary is also a problem.
0
 
sqlnewbie08Author Commented:
Regarding production... yes it was an earlier version 9i, that was upgraded to 10g.  I apparently misunderstood the setting.  I was understood it that 10.2.0 would apply to all versions and not that it would be 'downgraded' version.  So, bottom-line, change it to 10.2.0.4 to match the version that is running to get use of any new features...
0
 
mrjoltcolaCommented:
I typically never set it except at database creation, or major version upgrade. Not during patches, so I recommend you leave it as it was.
0
 
schwertnerCommented:
Mr. johnsone is absolutly correct.
This parameter is set only when you expect version conflicts
with some components and would like the installation to
function like the version you mention.
But I do not have evidence you need something like this.
There are more then 300 init parameters, but we change only a couple of them
and do major changes when we need to change the behavior of the DB.
0
 
sqlnewbie08Author Commented:
thank you
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.