Oracle 内存管理

Posted john2017

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle 内存管理相关的知识,希望对你有一定的参考价值。

--内存分配
建库时可以先分配系统内存的50%-80%给Oracle,后期根据业务再进行调整。
SGA、PGA分配比例:
OLTP:SGA %80 , PGA %20
OLAP:SGA %50 , PGA %50
混合:SGA %60 , PGA %40


--sga自动管理
statistics_level 值设置为 typical 或 all,启动 sga 自动管理。
给定 sga_target 一个总的数值。


--sga手动管理
设置 sga_target=0 ,设置相关组件大小:
java_pool_size                      
large_pool_size                      
shared_pool_size                     
streams_pool_size                   
db_cache_size                       
log_buffer              --貌似不能直接设置,要用pfile设置


SQL> alter system set sga_target=0 scope=spfile;

System altered.

SQL> alter system set java_pool_size=4M scope=spfile;

System altered.

SQL> alter system set large_pool_size=4M scope=spfile;

System altered.

SQL> alter system set shared_pool_size=136M scope=spfile;

System altered.

SQL> alter system set db_cache_size=352M scope=spfile;

System altered.

关闭并重启数据库
                       
--pga自动管理
workarea_size_policy 值设置为 auto 时,启用 pga 自动管理
给定 pga_aggregate_target 一个总的数值


oracle 11g两个参数
memory_target    用户自动内存管理(sga和pga)
memory_max_size  自动内存管理时候的一个目标值,实际可能超出该值

























以上是关于Oracle 内存管理的主要内容,如果未能解决你的问题,请参考以下文章

Oracle 内存管理

oracle怎么设置自动管理内存

oracle内存管理

Oracle 11G R2的内存管理

ORACLE 11G内存管理方式

使用自动内存管理