您好,欢迎访问一九零五行业门户网

Oracle BufferCache优化思路

shared pool主要由保存数据字典的data_dictionary和保存sql和pl/sql代码和执行计划的library cache组成 。还包括其它供系统不同特
shared pool主要由保存数据字典的data_dictionary和保存sql和pl/sql代码和执行计划的library cache组成 。还包括其它供系统不同特性和技术使用的若干缓冲区,如为shared server模式提供的uga等。
优化shared pool的思路:
1)根据设置经验,例如,可设置shared_pool_size=sga_target*(10%~15%)。
2)重点关注保存sql和pl/sql代码和执行计划的library cache相关指标。查看awr报告load profile部分,分析hard parses/s等指标。分析instance efficiency percentages (target 100%)中library hit %、execute to parse %、soft parse %等
   需要关注的等待事件:
   latch:library cache
   latch:shared pool
3)查看time model statistics中与shared pool相关指标(parse time elapsed与hard parse elapsed time)。
  如果hard parse elapsed time所占比例较高,说明应用的语句共享性存在严重问题。
优化方法:
1)评估语句共享性
   execute to parse %=(execute次数-parse次数)/execute次数*100%
如果execute to parse %太低,说明解析次数非常高,系统整体共享性差。一般该指标达到70%以上,,就说明语句共享性不错。
awr报告中library hit %、soft parse %和hard parses/s。parse包含hard parse与soft parse次数,但我们应关注hard parses。
查询非共享的sql语句(执行次数为1):
   select sql_text from v$sqlarea where executions=1 order by upper(sql_text);
其它类似信息

推荐信息