Oracle 12c 新参数 PGA_AGGREGATE_LIMIT 限制 PGA 内存总大小

  • Post author:
  • Post category:其他


Oracle 12c 新参数 PGA_AGGREGATE_LIMIT 限制 PGA 内存总大小



在自动

PGA

内存管理模式下,


Oracle DB


尝试通过动态控制分配给工作区的


PGA


内存量遵从


PGA_AGGREGATE_TARGET


中指定的值。但是,有时候


PGA


内存使用量可能会因为以下原因超过


PGA_AGGREGATE_TARGET


指定的值:


•PGA_AGGREGATE_TARGET

是一个目标,而不是一个限制。


•PGA_AGGREGATE_TARGET

仅控制可优化内存的分配。




过多的

PGA

使用量可能会导致高交换率。如果出现


PGA


的使用量大大超过


PGA_AGGREGATE_TARGET


参数的值,就可能产生


SWAP


,从而影响整个系统的性能,更进一步导致


DB hang


住。因此在


Oracle 12c


中引入了新的参数


PGA_AGGREGATE_LIMIT


,其可以限制整体


PGA


使用量。


PGA_AGGREGATE_LIMIT


限制的是实例消耗的


PGA


的总量。是一个硬性限制。


PGA_AGGREGATE_LIMIT


参数是动态参数;修改该参数不需要重新实例。设置


PGA_AGGREGATE_LIMIT


的值时也不需要关心是否使用了自动内存管理。




如果发生



PGA

超量使用的




情况,请考虑使用

PGA_AGGREGATE_LIMIT

初始化参数限制整体的