扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
很早以前我们就听说了Oracle11g的自动内存管理(Automatic Memory Management)的新特性,这个新特性算不上惊人,但是却是Oracle在内存管理上的又一重要增强。
如果这个参数设置过高,在实例启动时可能会出现如下错误提示:
SQL*Plus: Release 11.1.0.5.0 - Beta on Sun Jul 29 08:35:28 2007
Copyright (c) 1982, 2007, Oracle. All rights reserved.Connected to an idle instance.
SQL> startup
ORA-00845: MEMORY_TARGET not supported on this system
在设置了这个参数后,自动内存调整启用:
SQL> show parameter memoryNAME TYPE VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address integer 0
memory_max_target big integer 416M
memory_target big integer 416M
shared_memory_address integer 0
类似SGA_MAX_SIZE与SGA_TARGET一样,MEMORY_MAX_TARGET与MEMORY_TARGET成对出现,这一特性的出现使得PGA+SGA作为整体内存使用被一致的纳入自动管理范畴。
而同样与Oracle10g类似,设置了自动内存管理之后,PGA_AGGREGATE_TARGET参数不再需要设置,代之发挥作用的参数是带有2个下划线的__PGA_AGGREGATE_TARGET参数,我们可以来看一下这几个参数的解释:
SQL> select ksppinm,ksppdesc from x$ksppi
2 where ksppinm like '%pga%';KSPPINM KSPPDESC
----------------------- --------------------------------------------------
_pga_large_extent_size PGA large extent size
_use_ism_for_pga Use ISM for allocating large extents
_kdli_sio_pga use PGA allocations for direct IO
_kdli_sio_pga_top PGA allocations come from toplevel PGA heap
pga_aggregate_target Target size for the aggregate PGA memory consumed by the instance
__pga_aggregate_target Current target size for the aggregate PGA memory consumed
_pga_max_size Maximum size of the PGA memory for one process
总结一下:
Oracle11g的自动内存管理特性是早已被预期的Oracle的又一增强,是Oracle朝着自动内存管理方向所迈出的又一坚定步伐,是Oracle既定路线的又一延伸。
这一特性不会使人惊讶,但是会使人欣喜。
濡傛灉鎮ㄩ潪甯歌揩鍒囩殑鎯充簡瑙T棰嗗煙鏈€鏂颁骇鍝佷笌鎶€鏈俊鎭紝閭d箞璁㈤槄鑷抽《缃戞妧鏈偖浠跺皢鏄偍鐨勬渶浣抽€斿緞涔嬩竴銆�