文档介绍:共享池( Shared Pool)的调整
袋樟篙酋细族拈藐橱骑浊餐挑川芯钉三竹辖密录持诚成强猫熔舍运煽畔惩第四章共享池 Shared Pool的调整Oracle7: Performance Tuning
本章目的
完成本章之后,我们可以掌握以下的内容:
共享池的效能调整
躇兑休诅六踞鞠看羞梦雪例净樟拾滁纲卯秸生结舌葫角采尿摆升挪兑宿岛第四章共享池 Shared Pool的调整Oracle7: Performance Tuning
SGA
共享池(Shared pool):
Library cache
Data dictionary cache
UGA for multithreaded server connections
Database buffer
cache
Redo
log
buffer
Shared pool
Library cache
Data dictionary cache
User Global Area
Large pool
雅苗追痈庇诞伶颓沼环傻仲中犬开横颇羊仑理呕淹孪抨妈前觉邵荔衔涉淫第四章共享池 Shared Pool的调整Oracle7: Performance Tuning
共享池
大小由 SHARED_POOL_SIZE确定
库缓存包含SQL的文本,解析代码, 和执行的计划
数据字典缓存包含表,列的定义,及相关的权限
Shared pool
Librarycache
Datadictionarycache
Shared pool
惶千择章刺嗣啃堤诸塑末嫁痛仑续缝吏贰蕴迂卸摈负棍涂撵捕脸跌解缆撇第四章共享池 Shared Pool的调整Oracle7: Performance Tuning
库缓存
用来保存SQL语句及PL/SQL块,给用户共享
被最近最少使用算法( LRU) 管理
被用来避免SQL语句被重新解析
乎招辑菩诈谢逼绿仔彝滥筒慢尹当匪黍山戒融微寅喇剁买腆抹熙佃崩鹤鹃第四章共享池 Shared Pool的调整Oracle7: Performance Tuning
Shared SQL, PL/SQL areas
库缓存
Context area
for SELECT
statement 2
Context area
for SELECT
statement 1
SELECT
statement 1
SELECT
statement 2
SELECT
statement 1
月劝委蹈辗唐碾尉蝎墓戮仲存吨使讲嫂宝毗捉屯展韭柯租寞倡假愧并自沁第四章共享池 Shared Pool的调整Oracle7: Performance Tuning
库缓存的效能调整
把解析维持在一个最小的范围:
确保用户可以共享SQL语句
右紊豌项幢琵踞规卷迄筒从嗡恃拯蒋踊撅躯然蔗滨评逛峡什拜糟炼始埠赢第四章共享池 Shared Pool的调整Oracle7: Performance Tuning
库缓存的命中率
一个衡量库存是否优化的百分数,用来看在库缓存里面没有找到的SQL语句的百分数,Oracle建议这个百分数应小于1%
看库缓存的命中率的SQL
select sum(pins) Pins, sum(reloads) Reloads,
sum(reloads) / ( sum(pins) + sum(reloads) ) * 100 Percentage from v$librarycache;
雅敞狡灯讣爪冻稚根唾籍蹈巨棵冀高萧脖汞磕饭奏神贫旱超偶砚桂锑伴初第四章共享池 Shared Pool的调整Oracle7: Performance Tuning
数据字典缓冲区
内容:数据库对象的定义及权限
效能调整:提高在数据字典缓冲区里面找到数据库对象及
权限信息的命中率
部汗惦乏屏力渡切嘲川釜聪猜掌龄壳定煽墙惩保瞥议澎捍秋盛墅搁鸽鸯蕊第四章共享池 Shared Pool的调整Oracle7: Performance Tuning
数据字典缓冲区的命中率
一个衡量数据字典缓冲区是否优化的百分数,用来看在数据字典缓冲区里面找到的数据库对象及权限的百分数,Oracle建议这个百分数应超过95%
看数据字典缓冲区命中率的SQL命令
Select
(1 - sum(getmisses)/(sum(gets)+sum(getmisses)))*100 HitRate
from v$rowcache
邦响剃聊窗绽襄辐吼什荐脾彪偏析邪滁碍僳泼觅窍撩烧奇医列芦洪硝妇却第四章共享池 Shared Pool的调整Oracle7: Performance Tuning