- 最后登录
- 2018-11-1
- 在线时间
- 377 小时
- 威望
- 29
- 金钱
- 6866
- 注册时间
- 2011-10-12
- 阅读权限
- 200
- 帖子
- 891
- 精华
- 4
- 积分
- 29
- UID
- 1
|
5#
发表于 2012-12-6 13:32:44
说版本 号 至少精确到 第四位!!- Applies to:
- Oracle Server - Enterprise Edition - Version 11.1.0.6 to 11.2.0.1 [Release 11.1 to 11.2]
- Information in this document applies to any platform.
- ***Checked for relevance on 17-APR-2012***
- Symptoms
- Alert.log file displays the message :
- WARNING: Granules of pga_aggregate_target 102 cannot be more than memory_target (104) - sga_target (0) or min_sga (5)
- The following Note has already been reviewed:
- Note 970274.1 WARNING: GRANULES OF PGA_AGGREGATE_TARGET CANNOT BE MORE THAN MEMORY_TARGET
- and the current database parameters were:
- sga_target = 0
- memory_target = 8G
- memory_max_target = 8G
- pga_aggregate_target = 0
- Cause
- Bug 9242054 , which is closed as a duplicate of unpublished Bug 8813366, has been opened to address this issue.
- It was found that, from the message:
- WARNING: Granules of pga_aggregate_target 124 cannot be more than memory_target (128) - sga_target (0) or min_sga (5)
- granule size is 64MB due to memory_target = 8192M
- total number of granules is 128 (8192M / 64MB = 128)
- And 5 granules are allocated for min_sga and hence you keep seeing message like 124 for pga_aggregate_target > 128 and so forth.
- In order to determine the number of granules at a certain time, you may check the warning message and the output of
- set lines 100
- col end_time format a16 head "Time Stamp"
- col init format 999,999,999 head "Initial (MB)"
- col target format 999,999,999 head "Target (MB)"
- col final format 999,999,999 head "Final (MB)"
- col component format a25 head "Component"
- col status head "Status"
- select to_char(end_time,'dd-Mon hh24:mi') end_time, component,
- (initial_size/1024/1024) init, (target_size/1024/1024) target,
- (final_size/1024/1024) final, status
- from v$memory_resize_ops order by end_time;
- col mns format 999,999,999 head "Min Size"
- col mxs format 999,999,999 head "Max Size"
- col granule format 999,999,999 head "Granule Size"
- select component, (min_size/1024/1024) mns,
- (max_size/1024/1024) mxs, (granule_size/1024/1024) granule
- from v$memory_dynamic_components;
- Solution
- To fix this issue:
- 1- Apply Patch 8813366 located in:
- https://updates.oracle.com/download/8813366.html
- or
- 2- Upgrade to 11.2.0.1 and apply 11.2.0.2 patchset which has the fix for bug 8813366.
- or
- 3-WORKAROUND:
- Reduce the number of shared pool subpools by setting the init.ora parameter
- "_kghdsidx_count"=2
- or reduce granule size with init.ora parameter:
- "_ksmg_granule_size"=16777216
- NOTE: These require an outage of the database.
复制代码 跑一下下面的脚本呢- set lines 100
- col end_time format a16 head "Time Stamp"
- col init format 999,999,999 head "Initial (MB)"
- col target format 999,999,999 head "Target (MB)"
- col final format 999,999,999 head "Final (MB)"
- col component format a25 head "Component"
- col status head "Status"
- select to_char(end_time,'dd-Mon hh24:mi') end_time, component,
- (initial_size/1024/1024) init, (target_size/1024/1024) target,
- (final_size/1024/1024) final, status
- from v$memory_resize_ops order by end_time;
- col mns format 999,999,999 head "Min Size"
- col mxs format 999,999,999 head "Max Size"
- col granule format 999,999,999 head "Granule Size"
- select component, (min_size/1024/1024) mns,
- (max_size/1024/1024) mxs, (granule_size/1024/1024) granule
- from v$memory_dynamic_components;
复制代码 |
|