WEB开发网
开发学院数据库Oracle Oracle内存结构研究-PGA篇 阅读

Oracle内存结构研究-PGA篇

 2009-07-06 11:50:06 来源:WEB开发网   
核心提示:一、概述SGA,PGA,Oracle内存结构研究-PGA篇,UGA都是Oracle管理的内存区,SGA(System Global Area),SORT_AREA_RETAINED_SIZE也为512KB,则Oracle使用512KB的内存进行排序,即系统全局区,Oracle中最重要的内存区

一、概述

SGA,PGA,UGA都是Oracle管理的内存区。

SGA(System Global Area),即系统全局区,Oracle中最重要的内存区。

PGA(Process Global Area),即程序全局区,一个进程的专用的内存区。

UGA(User Global Area),即用户全局区,与特定的会话相关联。

专用服务器连接模式,UGA在PGA中分配。

共享服务器连接模式,UGA在SGA中的Large Pool中分配。

如果采用专用服务器连接模式,PGA中包含UGA,其他区域用来排序,散列和位图合并。

简单来讲,PGA=UGA+排序区+散列区+位图合并区。

二、PGA的管理模式。

PGA分两种管理模式:

1)        手动PGA内存管理,用户指定排序区和散列区所使用的内存,每个连接使用相同的内存。

2)        自动PGA内存管理,告诉Oracle可以使用的PGA的总量,由Oraclce根据系统负载决定具体分配。

        9iR1时默认为手动PGA内存管理,9iR2以后默认为自动PGA内存管理。

        PGA内存可以动态扩大和回收。

PGA内存管理模式由WORKAREA_SIZE_POLICY控制。

1)        设为MANUAL,启用手动内存管理。

2)        设为AUTO,并且PGA_AGGREGATE_TARGET不为0时,启用自动内存管理。

三、手动PGA内存管理

有三个参数对PGA影响最大。

SORT_AREA_SIZE:对信息排序所用的内存总量

SORT_AREA_RETAINED_SIZE:排序后在内存中保存排序信息的内存总量。

HASH_AREA_SIZE:存储散列列表所用的内存量。

下面对这三个参数进行说明:

1)        SORT_AREA_SIZE:

如果SORT_AREA_SIZE设为512KB,SORT_AREA_RETAINED_SIZE也为512KB,则Oracle使用512KB的内存进行排序,排序后所有数据都留在内存中。

1 2 3 4 5  下一页

Tags:Oracle 内存 结构

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接