首页 > 数据库 > Oracle > oracle 共享池 shared_pool
共享池(Shared pool)是SGA中最关键的内存片段,共享池主要由库缓存(共享SQL区和PL/SQL区)和数据字典缓存组成。其中库缓存的作用是存
放频繁使用的sql,pl/sql代码以及执行计划。数据字段缓存用于缓存数据字典。在内存空间有限的容量下,数据库系统根据一定的算法决定何
时释放共享池中的sql,pl/sql代码以及数据字典信息。下面逐一解释各个部件并给出调整方案。
一、共享池的组成
Library cache(库缓存) --存放SQL ,PL/SQL 代码,命令块,解析代码,执行计划
Data dictionary cache(数据字典缓存) --存放数据对象的数据字典信息
User global area(UGA) for shared server session --用于共享模式,可以将该模块移到lareg pool来处理。专用模式不予考虑。
二、Library cache 作用与组成
Library Cache 由以下四个部件组成
Shared SQL areas
Private SQL areas
PL/SQL procedures and packages
Various control structures
Library Cache 作用
存放用于共享的SQL命令或PL/SQL块
采用LRU算法(最近最少使用算法)
用于避免相同代码的再度解析
ORA-04031则表明共享池不够用
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29638498/viewspace-1226307/ ,如需转载,请注明出处,否则将追究法律责任。