1.摘要
SGA最重要的两部分:db_buffer_cache 和 shared_pool,其中两者相互独立又相互制约,ora-04031等错误,都是来自两者“竞争”产生的结果,因此合理的Shared_pool大小的设置,是一门艺术,接下来,我们针对shared_pool做深入的研究。
shared_pool是SGA中最关键的内存片段,特别是在性能和可伸缩性上(shared_pol的大小设置是直接影响oracle数据库的性能)。一个太小的共享池会降低性能,使系统停止,太大的共享池也会有同样的效果,将会消耗大量的CPU来管理这一个共享池。
shared_pool分为library_cache(SQL语句缓存)和Data_dictionary cache(数据字典缓冲)两个主要的部分以及近600项其他部分。
共享池是对SQL、PL/SQL程序进行语法分析、编译、执行的内存区域。