Troubleshooting ORA-201 and ORA-202 Error

本文详细解释了Oracle数据库中COMPATIBLE参数的意义及其使用限制,包括升级、创建数据库及降低兼容性设置等场景下可能遇到的ORA-201和ORA-202错误,并提供了相应的解决步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

----

3. When lowering the value of COMPATIBLE:

  • You cannot start the database with lower compatibility, unless restoring from a backup. This is because datafiles contain COMPATIBLE information in their headers. If the parameter is increased and the database is then restarted, the datafile headers will be updated to the higher release. If then you decide to lower the parameter, this will fail with ORA-201/ORA-202.
  • A default value is considered lower than a specific patchset value for the setting of the COMPATIBLE parameter. E.g. 10.2.0 is considered lower than 10.2.0.1, 10.2.0.2 etc.

 

-----

 

 

PURPOSE

This document aims to explain the circumstances when you may receive the below errors and what to consider in such cases: 
- ORA-201: control file version <num> incompatible with Oracle version <num> 
- ORA-202: control file: <name>

TROUBLESHOOTING STEPS

Getting ORA-201 and ORA-202 is directly connected to the COMPATIBLE initialization parameter:

  • either you are trying to set COMPATIBLE to a wrong value 
  • or an incompatible operation is performed with regards to the current setting of COMPATIBLE

Significance and use of COMPATIBLE parameter:

  • COMPATIBLE allows you to use a new release of Oracle, while at the same time guaranteeing backward compatibility with an earlier release. This is helpful if it becomes necessary to revert to the earlier release.
  • It specifies the release with which Oracle needs to keep compatibility, at the same time permitting you to use some of the advantages of a newer release. Trying to use the new specific features which require compatibility set to the higher release will return errors.

Some requirements and restrictions that will help you to avoid ORA-201/ORA-202:

1. At upgrade/downgrade:

  • For upgrade from 9.2.0.x to 11g it is mandatory to set the COMPATIBLE parameter to at least 10.1.0. After the upgrade has been completed successfully, it can be further increased accordingly if necessary.
  • For upgrade from 10.1.0.x or 10.2.0.x to 11g you can leave the COMPATIBLE parameter set to its current value until the upgrade has been completed successfully.  
  • Downgrades from 11g to 9iR2 are not supported. This is because in the upgrade process the compatible parameter is set to a minimum 10.1.0. This prevents downgrades. For additional information, see 
    Note 388604.1 - ORA-00201 while downgrading from 10gR2 to 10gR1 or 9iR2

2. At database creation:

  • For 11.2, the default value of the COMPATIBLE parameter is 11.2.0. The minimum value is 10.0.0.
  • For 11.1, the default value of the COMPATIBLE parameter is 11.1.0. The minimum value is 10.0.0.
  • For 10.2, the default value of the COMPATIBLE parameter is 10.2.0. The minimum value is 9.2.0.
  • For 10.1, the default value of the COMPATIBLE parameter is 10.0.0. The minimum value is 9.2.0.
  • For 9.2, the default value of the COMPATIBLE parameter is 8.1.0. The range of values is between 8.1.0 to the current release.
NOTE:
For 10.1 - 11.2, if you create an Oracle Database using the default value, you can immediately use all the new features in this release, and you can never downgrade the database.
Note that a new database can in fact never be downgraded because you can only downgrade to the last version you actually upgraded from.

3. When lowering the value of COMPATIBLE:

  • You cannot start the database with lower compatibility, unless restoring from a backup. This is because datafiles contain COMPATIBLE information in their headers. If the parameter is increased and the database is then restarted, the datafile headers will be updated to the higher release. If then you decide to lower the parameter, this will fail with ORA-201/ORA-202.
  • A default value is considered lower than a specific patchset value for the setting of the COMPATIBLE parameter. E.g. 10.2.0 is considered lower than 10.2.0.1, 10.2.0.2 etc.

What to do if you get ORA-201/ORA-202

NOTE:
As with all destructive actions, depending on the solution you will consider from below, Oracle Corporation strongly advises taking a FULL COLD BACKUP of the database before these actions are performed.
  1. Set the COMPATIBLE initialization parameter to an appropriate value.  
  2. The impossibility to lower COMPATIBLE in some cases should not be confused with the ability to downgrade a database. It is possible to 'downgrade' a database but only as far as the compatible value setting. That is, if the db has been operating with compatible=9.2.0, you can downgrade from 10.x to 9.2.0.1.0. If the db was operating with compatible=10.1.0, you can downgrade to 10.1.0.2.0 (initial 10g Release). Outside of these restrictions you must use export/import to downgrade.
  3. Another option, if you need the COMPATIBLE setting lowered, you can do a point-in-time recovery to a time before the compatibility was advanced.
  4. Recreate the control files to make them compatible with the needed release. There is a problem at controlfile level when the error message does not contain version numbers: "control file version incompatible with Oracle version" . This may indicate that the controlfile is corrupt. This may also help when no backup is available

Other observations

  • to avoid the errors in RAC the instances must have the COMPATIBLE parameter set to the same value
  • to avoid the errors in standby database, this parameter must have the same value on both the primary and standby databases

4. If Controlfile is corrupted, check ORA-00227, ORA-00202: BRING UP INSTANCE AFTER MACHINE CRASH (Doc ID 1072762.6)

转载于:https://www.cnblogs.com/feiyun8616/p/9430175.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值