ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ORACLE 内存管理

ORACLE 内存管理

原创 Linux操作系统 作者:tomshenhao 时间:2011-09-15 14:32:06 0 删除 编辑
 

SGA内存管理方式:创建是可以设定,默认为自动管理

自动:Automatic Shared Memory Management(ASMM)

是否使用自动模式:show parameter sga_target

自动模式下,系统自动分配:Java pool;Large pool;Shared pool;Database buffer cache

如果值为0,手工管理SGA

如果值不为0,系统自动管理,该值为SGA总大小

修改成手工管理:alter system set sga_target=0;

PGA自动管理:系统自动分配SQL work area;SORT_AREA_SIZE被忽略。

内存分配方式:以4M为单位分配

内存建议配置方式:

OLTP (Online Transaction Processing)

OS --> 20%

ORACLE --> 80%

SGA --> 80% ORACLE Memory

PGA --> 20% ORACLE Memory

OLAP (Online Analytical Processing)

OS --> 20%

ORACLE --> 80%

SGA --> 50%

PGA --> 50% 

PGA:process (session 启动的时候分配的)

查看:sys/system用户 show parameter pga;

PGA分类:

1. session:session信息;

2. cursor:cursor句柄;

3. private:语句中的变量;

4. work area:排序;join;bitmap index

查看:select * from v$sql_workarea;

具体脚本:select * from v$sql;

SGA:system (数据库启动时候分配的)

查看:sys/system用户 show sga;

SGA分类:Shared pool/Database Buffer Cache / Large pool / Jave pool / Redo buffer / 固定SGA

系统共享池(Shared Pool):提高脚本运行速度

系统共享池(Shared Pool)分类:建议最大设置为1G,再大ORACLE管理能力不够

查看状况:show parameter shared_pool;

1. UGA:shared server 模式时用于管理;

2. Libarary Cache:最近执行的SQL、PL/SQL脚本

查看:select * from v$library_cache_memory

放入方法:

具体信息:select * from v$db_object_cache;

3. Data Dictionary Cache:信息;权限;定义

4.  Shared_pool_reserver:语句<4k存入library cache;语句>4k存入shared_pool_reserver

查看:show parameter shared_pool_reserver;

Database Buffer Cache 分类:

查看状况:select * from v$buffer_pool / show parameter cache;

1. DB_KEEP_CACHE:数据量小,并需要反复访问。

设置:alter system set db_keep_cache_size=10M;

放入方法:alter table hr.employees storage (buffer_pool keep);

2. DB_CACHE:数据量一般,访问量一般

3. DB_RECYCLE_CACHE:数据量大,访问次数少

设置:alter system set db_recycle_cache_size=10M;

放入方法:alter table hr.employees storage (buffer_pool recycle);

4. nk_block_size_buffer_cache:

设置:alter system set db_16k_cache_size=10M;

Database Buffer Cache 空间状态:

1. free / unused:启动时的状态;

2. clean:从数据文件中读数据;

3. pined:当读出的数据被访问;

4. dirty:对数据做修改或删除操作;

Large pool:提供大内存块,针对RMAN,多线程;不配置,占用shared pool

show parameter large_pool;

Java pool:数据库中JAVA进程使用;升级数据库是需要使用

show parameter java_pool;

Redo buffer:写Online Redo日志;写动作与数据库操作非并行

固定SGA:Oracle自己控制;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24751738/viewspace-707511/,如需转载,请注明出处,否则将追究法律责任。

上一篇: ORACLE 启动停止
下一篇: ORACLE 索引
请登录后发表评论 登录
全部评论

注册时间:2011-07-14

  • 博文量
    260
  • 访问量
    398727