SGA,PGA,UGA都是Oracle打点的内存区。 ' ^" c; T& ?" x' e* L7 A( R2 |" Q+ e
SGA(System Global Area),即系统全局区,Oracle中最主要的内存区。 a; Y& K* X M: M1 M& L
PGA(Process Global Area),即轨范全局区,一个历程的专用的内存区。
r1 `* U5 n8 `% \: ~7 e0 \2 h, i7 [UGA(User Global Area),即用户全局区,与特定的会话相联系关系。
# G# M/ Y, S& r" R: i+ @8 t* ?( P专用处事器毗连模式,UGA在PGA平分配。
# K a: ?( c/ Q, X% R; W7 p共享处事器毗连模式,UGA在SGA中的Large Pool平分配。 8 R# I. t) q/ ~0 t" p. V4 V/ Y
如不美观采用专用处事器毗连模式,PGA中包含UGA,其他区域用来排序,散列和位图合并。
2 n0 D2 Q/ v6 u$ c4 G7 D7 ~3 B简单来讲,PGA=UGA+排序区+散列区+位图合并区。 1 y2 @! d: ?8 H2 H- j
PGA分两种打点模式: 2 S, y( K" h+ S, ^
1) 手动PGA内存打点,用户指定排序区和散列区所使用的内存,每个毗牵连用不异的内存。 & B4 U5 z( V1 b5 J* w
2) 自动PGA内存打点,告诉Oracle可以使用的PGA的总量,由Oraclce按照系统负载抉择具体分配。
# w, Y4 c/ \$ b9iR1时默认为手动PGA内存打点,9iR2往后默认为自动PGA内存打点。
+ R# d6 y Z) J4 w' f, Y7 aPGA内存可以动态扩大和收受接管。 - W7 w9 w! O& |& Q
PGA内存打点模式由WORKAREA_SIZE_POLICY节制。
8 F3 T5 [7 z, [. ^6 G' M9 a9 M1) 设为MANUAL,启用手动内存打点。 ( h: ]$ H% s) G5 |
2) 设为AUTO,而且PGA_AGGREGATE_TARGET不为0时,启用自动内存打点。
. n" U" V5 l! i有三个参数对PGA影响最大。 8 c, q$ l9 z3 {- p
SORT_AREA_SIZE:对信息排序所用的内存总量
9 W/ T" |2 H- V2 `( W, Z; wSORT_AREA_RETAINED_SIZE:排序后在内存中保留排序信息的内存总量。 1 t# {) |" D: Q% P1 v) P
HASH_AREA_SIZE:存储散列列表所用的内存量。 |