查看: 4113|回复: 7

[原创] share pool 优化建议

[复制链接]
论坛徽章:
1
2009日食纪念
日期:2009-07-22 09:30:00
发表于 2009-9-9 18:06 | 显示全部楼层 |阅读模式
show parameter shared
cursor_sharing                       string      EXACT
hi_shared_memory_address             integer     0
max_shared_servers                   integer     20
shared_memory_address                integer     0
shared_pool_reserved_size            big integer 109890764
shared_pool_size                     big integer 2197815296
shared_server_sessions               integer     550
shared_servers                       integer     1


select SHARED_POOL_SIZE_FOR_ESTIMATE,ESTD_LC_SIZE,ESTD_LC_TIME_SAVED from v$shared_pool_advice;

SHARED_POOL_SIZE_FOR_ESTIMATE ESTD_LC_SIZE ESTD_LC_TIME_SAVED
----------------------------- ------------ ------------------
                         1200         1124             315767
                         1424         1350             315791
                         1648         1575             315809
                         1872         1800             315820
                         2096         2023             315861
                         2320         2246             315867
                         2544         2468             315917
                         2768         2689             315920
                         2992         2887             315937
                         3216         2998             315940
                         3440         3109             315942
                         3664         3147             315942
                         3888         3147             315942
                         4112         3147             315942
                         4336         3147             315942

15 rows selected

ORACLE建议
我想把share pool size 设置为 3440 不知可否?
不过sga max size 为 4733246432
db_cache_size 2097152000
log_buffer 为 1048576
我就感觉这个log_buffer太小了 ?
然后我有查了查
select REQUESTS,REQUEST_MISSES,REQUEST_FAILURES from v$shared_pool_reserved;

  REQUESTS REQUEST_MISSES REQUEST_FAILURES
---------- -------------- ----------------
    127035              0                0
而request_failures 为 0
shared pool free memory                 214432312
也就是说free memory >= shared_pool_reserved_size * 50%
所以呢shared_pool_reserved_size 的值需要减少?
不知可否?
数据库还在优化当中.
望大家给些建议? 先谢了.
论坛徽章:
3
九尾狐狸
日期:2006-04-12 17:47:49ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44ITPUB十周年纪念徽章
日期:2011-11-01 16:21:15
发表于 2009-9-9 21:20 | 显示全部楼层
如果是10g,用sga自动管理,把sga_target 设置为小于当前最大值的一个值,log_buffer有500k~1M足够了,让oracle自动管理shared_pool大小,在最繁忙的时候检查一下v$sga_stat,看看shared_pool的大小,然后把shared_pool_size这个参数设置为该值的70%,然后观察,适当调整,share_poo_reserved_size这个值通常设置为shared_pool_size这个值得5%。  

如果是10g, 可以在先设置一个较小的值,然后在繁忙的时刻过后,参考v$shared_pool_advice,适当增加这个值,然后反复微调。 另外,可以在忙时,作如下查询 :
select sum(sharable_mem) from v$db_object_cache
where type='PACKAGE' or type='PACKAGE BODY'
or type='FUNCTION' or type='PROCEDURE';

select sum(sharable_mem) from v$sqlarea
where executions > 5;
再适当增加一些dynamic sql的值(很小的范围增加),具体视实际情况而定。

使用道具 举报

回复
论坛徽章:
1
2009日食纪念
日期:2009-07-22 09:30:00
 楼主| 发表于 2009-9-11 07:46 | 显示全部楼层
再次谢谢.

不过 是 oracle 9.2.7

使用道具 举报

回复
认证徽章
论坛徽章:
131
2006年度最佳技术回答
日期:2007-01-24 12:58:48福特
日期:2013-10-24 13:57:422014年新春福章
日期:2014-02-18 16:41:11马上有车
日期:2014-02-18 16:41:11马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:142013年新春福章
日期:2013-02-25 14:51:24
发表于 2009-9-11 15:20 | 显示全部楼层
看statspack report结果~

使用道具 举报

回复
论坛徽章:
10
授权会员
日期:2005-10-30 17:05:33秀才
日期:2016-03-24 09:10:24秀才
日期:2016-02-18 09:11:33秀才
日期:2016-01-25 14:55:312013年新春福章
日期:2013-02-25 14:51:24ITPUB十周年纪念徽章
日期:2011-11-01 16:19:412011新春纪念徽章
日期:2011-02-18 11:43:34ITPUB元老
日期:2010-11-16 08:41:11ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51秀才
日期:2016-03-24 09:20:52
发表于 2009-9-11 16:16 | 显示全部楼层
自动管理, 最好

使用道具 举报

回复
论坛徽章:
4
2012新春纪念徽章
日期:2012-01-04 11:53:54ITPUB 11周年纪念徽章
日期:2012-10-09 18:08:152013年新春福章
日期:2013-02-25 14:51:24ITPUB社区OCM联盟徽章
日期:2013-03-21 15:37:32
发表于 2012-10-2 17:53 | 显示全部楼层
不建议自动管理。

使用道具 举报

回复
招聘 : 系统架构师
认证徽章
论坛徽章:
370
秀才
日期:2015-08-13 09:04:39巨蟹座
日期:2015-09-10 09:03:46秀才
日期:2015-09-11 10:43:06摩羯座
日期:2015-09-20 17:10:27秀才
日期:2015-09-21 09:46:16秀才
日期:2015-09-21 11:16:42秀才
日期:2015-10-08 17:57:58天枰座
日期:2015-10-28 18:28:29秀才
日期:2015-11-11 09:48:44巨蟹座
日期:2015-09-09 14:25:25
发表于 2012-10-3 10:27 | 显示全部楼层
what your app? did they bind variable ?

使用道具 举报

回复
论坛徽章:
1
2013年新春福章
日期:2013-02-25 14:51:24
发表于 2012-10-3 12:13 | 显示全部楼层
如果是10g,用sga自动管理,把sga_target 设置为小于当前最大值的一个值,log_buffer有500k~1M足够了
这个有问题吧,sga 管理的不包含log_buffer ,1M 太小了,业务繁忙时,有时一秒钟就是好几M 的redo log呢

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表