oracle 11g 啟用自動記憶體管理時sga_max 這個引數設定的意義不大

zhouxianwang發表於2014-11-05

Note:

The preceding steps instruct you to set SGA_TARGET and PGA_AGGREGATE_TARGET to zero so that the sizes of the SGA and instance PGA are tuned up and down as required, without restrictions. You can omit the statements that set these parameter values to zero and leave either or both of the values as positive numbers. In this case, the values act as minimum values for the sizes of the SGA or instance PGA.



[oracle@ora11g ~]$ sqlplus  / as sysdba;

SQL*Plus: Release 11.2.0.4.0 Production on Wed Nov 5 18:01:25 2014

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SYS@ sms> show parameter mem;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address             integer     0
memory_max_target                    big integer 2608M
memory_target                        big integer 2608M
shared_memory_address                integer     0
SYS@ sms> show parameter sga;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
lock_sga                             boolean     FALSE
pre_page_sga                         boolean     FALSE
sga_max_size                         big integer 2G
sga_target                           big integer 1G
SYS@ sms> show parameter pga;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
pga_aggregate_target                 big integer 600M

[oracle@ora11g ~]$ sqlplus  / as sysdba;

SQL*Plus: Release 11.2.0.4.0 Production on Wed Nov 5 18:01:25 2014

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SYS@ sms> show parameter mem;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address             integer     0
memory_max_target                    big integer 2608M
memory_target                        big integer 2608M
shared_memory_address                integer     0
SYS@ sms> show parameter sga;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
lock_sga                             boolean     FALSE
pre_page_sga                         boolean     FALSE
sga_max_size                         big integer 2G
sga_target                           big integer 1G
SYS@ sms> show parameter pga;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
pga_aggregate_target                 big integer 600M

    在oracle 11g 中,啟用了自動記憶體管理(memory_target,memory_max_target 為非0的值),sga_max_sizep 這個引數應是限制sga最大可分配的記憶體。這個引數設的再大,(等於memory_max_target的值),而實際分配的內大大小應是 <=(memory_max_target-pga_aggregate_target ),所以設定的意義不大,或直接設定 sga_max_sizep=memory_max_target
      不知我的理解對不對?

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27036311/viewspace-1321874/,如需轉載,請註明出處,否則將追究法律責任。

相關文章