4.4.2 自动共享内存管理
自动共享内存管理用来对SGA进行自动设置。只要通过初始化参数SGA_TARGET和SGA_MAX_SIZE指定SGA的最大大小,那么SGA中的各种缓冲区大小就可以根据需要自动确定,可以说,这是一种半自动化的内存管理方法。需要注意的是,重做日志缓冲区、非标准块对应的高速缓存、KEEP缓冲池和RECYCLE缓冲区的大小仍需自己设置。
为了使用自动共享内存管理,首先为初始化参数SGA_TARGET和SGA_MAX_SIZE指定适当的大小,然后把以下初始化参数的值设为0。
MEMORY_MAX_TARGET
MEMORY_TARGET
SHARED_POOL_SIZE
LARGE_POOL_SIZE
JAVA_POOL_SIZE
DB_CACHE_SIZE
STREAMS_POOL_SIZE
而以下初始化参数仍然需要进行适当的设置:
LOG_BUFFER
DB_KEEP_CACHE_SIZE
DB_RECYCLE_CACHE_SIZE
DB_nK_CACHE_SIZE
如果需要了解SGA中每种缓冲区的实际大小,可以查询动态性能视图v$sgainfo。