Installing, Executing and Interpreting outputfrom the "scnhealthcheck.sql" script
目的:
描述scnhealthcheck.sql 怎样执行和解释scn健康检查的输出
范围:
适用于任何平台
适用于 oracle数据库企业版和标准版的10.1.0.5-12.1.0.1的数据库,单是对于
物理standby 数据库来说,应该只对主数据库执行脚本
详细信息
1)安装scnheathcheck.sql
download:Patch:13498243
安装完补丁会在$ORACLE_HOME/rdbms/admin下生成目录。
进入到脚本所在目录以管理员登陆运行脚本
sqlplus / as sysdba
spool /tmp/scncheck_out
@scnhealthcheck
spool off
exit
2)解释输出结果
------------------------------------------------------------
ScnHealthCheck
------------------------------------------------------------
Current Date: 2012/01/17 01:01:09
Current SCN: 384089
Version: 11.1.0.7.0
------------------------------------------------------------
Result: A - SCN Headroom is good
Apply the latest recommended patches
based on your maintenance schedule
AND set_external_scn_rejection_threshold_hours=24 after apply.
For furtherinformation review MOS document id 1393363.1
result A 说明 scnheadroom 很好
这个时间的scn健康状况是很好的。大多数的数据库都应该是这种状态,你被建议按照oracle support建议的正常维护计划打当前最新的补丁。这种情况在目前不需要太多关注。参考便条中的#1和#2
result B 说明 scnheadroom 低
你需要立即打补丁而不是等待正常的oracle support的维护计划窗口。打完补丁要每天监控系统健康,从打完补丁可能需要几天或者几周使你的scn headroom变为good状态.参考便条中的#1和#3
result C 说明 scnheadroom 很低
数据库scn有一个高的增长率,您被建议确认补丁根据oracle support建议更新到当前水平。如果没有执行,请按Document:1388639.1(收集高scn状态问题)来提交一个服务请求获取更多帮助。
对于上面的数据结果,oracle建议核实某些版本的一个隐含参数_external_scn_rejection_threshold_hours设置_external_scn_rejection_threshold_hours=24after apply
这个参数在2012年1月的cpu、psu和bundels中被引入。oracle建议在10g和11.1版本设置这个参数的值为24,11.2及以后版本不需要设置。这个参数是静态的在init.ora和spfile中修改如下:
In init.ora:
#Set threshold on dd/mon/yyyy - See MOS Document 1393363.1
_external_scn_rejection_threshold_hours = 24
In the spfile:
alter system set "_external_scn_rejection_threshold_hours" =24
comment='Set threshold on dd/mon/yyyy - See MOS Document 1393363.1'
scope=spfile ;
为什么要设置_external_scn_rejection_threshold_hours=24
oracle有很多使用默认值或者衍生值得隐含参数,这些一般不是客户打算设置的。oracle认为该参数最合适的值是24,并且这个值适用于oracle的所有版本。10g和11.1的cpu/psu中,这个参数被设置为一个不同的值,因此需要显式的设置这个参数为24。客户并不
希望自己来调节这个参数,以后的版本的值都是24这个默认值。
便条
#1 关于当前建议的参考
Document:756671.1 数据库补丁的最新版本
Document:331.1 条目"2. Plan"怎样寻找建议的补丁
Document:1374524.1 寻找最小的补丁。你被强烈建议使用建议案而不是使用最小水平的补丁, 尤其是使用2012的psu和cpu补丁
Document:742060.1 当前数据库的版本发行时间和补丁结束时间
请注意以下版本没有scn修订。对这些版本的建议是更新到一个新的版本。
9.2.0.7及之前的版本
10.1.0.2 到 10.1.0.4 包括10.1.0.4
10.2.0.1 和 10.2.0.2
11.1.0.6
11.2.0.1
上面的scnheathcheck脚本可以应用在当前最新版本上来计算headroom
#2scnheathcheck脚本的输出是数据库当前时间的一个快照。随着数据库运行,可能发生很大的变化。任何不是A的结果都要参照上面的指导
#3应用完补丁后,数据库变为A的状态可能需要很长时间
为了核实headroom是否增长,可以修改脚本中version=false为true,这个更改将导致输出结果产生额外一行。注意这个值每天增加不能超过1.如果headroom这个值持续减少或者变为负数,那么说明你没有完成补丁更新,那么请参照文档1388639.1来提交一个服务请求