|
本帖最后由 Kevin__Zhang 于 2012-7-22 05:14 编辑
今天需要为一个非常规恢复的库调整SCN,adjust_scn折腾了半天,可是SCN纹丝不动。
调整SCN也干过很多次,该注意的地方都注意到了,不大可能是我的疏忽造成的。
难道11gR2不再支持调整SCN了? 可是之前也在11gR2中调整过SCN,没遇到什么问题。
奇怪。继续用_minimum_giga_scn尝试,见鬼了:
SYS @ apci > startup
ORA-01078: failure in processing system parameters
LRM-00101: unknown parameter name '_minimum_giga_scn'
去掉了_minimum_giga_scn',顺利打开数据库检查下隐藏参数,果然,_minimum_giga_scn已经不存在了:
SYS @ apci > select ksppinm from x$ksppi where ksppinm like '%giga%';
no rows selected
这个库的版本是11.2.0.2.6,我们来看看其它的库:
10.2.0.4的库,意料之中没问题:
SYS @ 10gDB> select ksppinm from x$ksppi where ksppinm like '%giga%';
KSPPINM
--------------------------------------------------------------------------------
_minimum_giga_scn
11.2.0.2.4的库,也仍然没问题:
SYS @ XXDB >select ksppinm from x$ksppi where ksppinm like '%giga%';
KSPPINM
--------------------------------------------------------------------------------
_minimum_giga_scn
11.2.0.2.5的库,参数消失了:
SQL> select ksppinm from x$ksppi where ksppinm like '%giga%';
no rows selected
11.2.0.2.6的库:
SYS @ DB1 > select ksppinm from x$ksppi where ksppinm like '%giga%';
no rows selected
11.2.0.3的库:
SYS @ DB2 > select ksppinm from x$ksppi where ksppinm like '%giga%';
no rows selected
不知不觉中,oracle已经删除了这个大家都很熟悉的隐含参数,并且adjust_scn event也失效了。
那么剩下的问题就是,在未来,没有了oracle提供的这些工具,我们该怎么办了。
也很简单,BBED修改datafile header的checkpoint_change#至一个足够大的value。
然后重建控制文件,这样oracle会从datafile header中读出我们修改过的checkpoint_change#作为新的SCN。
|
|