Oracle 内存管理方式

oracle11g新出参数  MEMORY_MAX_TARGET 和  MEMORY_TARGET 进行自动管理PGA 和SGA 称之为 自动化内存管理(Automatic Memory Management,AMM。

MEMORY_MAX_TARGET  :MEMORY_TARGET所能设定的最大值。非动态可调。

MEMORY_TARGET :操作系统上 Oracle 所能使用的最大内存值。动态参数,MEMORY_TARGET 是PAG 和SGA的总和.memory_target 为 0 是手动管理,非0为自动管理。

sga_max_size : sga_max_size 是sga的最大值 。

sga_target  :  sga_target   是自动和手段管理 sga_target 为0 是手动管理,非0 是自动管理    

oracle 11g 引入参数mymory_max_target 和memory_target 就是oracle的新特性自动内存管理,AMM 的引入, 组合出来有 5 种内存管理形式.
自动内存管理(AMM):
memory_target=非0,是自动内存管理  ,如果初始化参数 LOCK_SGA = true ,则 AMM 是不可用的。
自动共享内存管理(ASMM): 在memory_target=0 and sga_target=非0 是自动内存管理
手工共享内存管理: memory_target=0 and sga_target=0   指定 share_pool_size 、db_cache_size 等 sga 参数
自动 PGA 管理: memory_target=0 and workarea_size_policy=auto  and PGA_AGGREGATE_TARGET=值
手动 PGA 管理: memory_target=0 and workarea_size_policy=manal  然后指定 SORT_AREA_SIZE 等 PGA 参数,一般不使用手动管理PGA

SQL> show parameter result_cache_size
用来缓存sql语句结果
NAME         TYPE          VALUE
------------------------------------ --------------------------------- ------------------------------
client_result_cache_size      big integer         0

如果指定了memory_target 而没有指定memory_max_target 重启后,memory_max_target 和memory_target 大小相等
如果指定了memory_max_target 而没有指定 memory_target重启后memory_target 为0
SQL> show parameter memory
NAME                                 TYPE        VALUE
------------------------------------ ----------- ---------------------------
hi_shared_memory_address             integer     0
memory_max_target                    big integer 1232M
memory_target                        big integer 1232M
shared_memory_address                integer     0

当设置  memory_max_target < memory_target 时:
SQL> alter system set memory_max_target=1000M scope=spfile;
系统已更改。

SQL> shut immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORA-00837: Specified value of MEMORY_TARGET greater than MEMORY_MAX_TARGET

11g AMM管理方式:                                                                                                              
SQL> select name,bytes/1024/1024 from v$sgainfo;                                                             

NAME BYTES/1024/1024
-------------------------------- ---------------                                                                                       
Fixed SGA Size                        1.31111908                                                                            
Redo Buffers                            5.015625                                                                                 
Buffer Cache Size                            496                                                                                  
Shared Pool Size                             216                                                                                  
Large Pool Size                                8                                                                                      
Java Pool Size                                 8                                                                                     
Streams Pool Size                              8                                                                                  
Shared IO Pool Size                            0                                                                                 
Granule Size                                   8                                                                                     
Maximum SGA Size                      742.328125                                                                      
Startup overhead in Shared Pool               64                                                                         
Free SGA Memory Available                      0                                                                           

SQL> show parameter sga                         

NAME                                 TYPE        VALUE                                             
------------------------------------ ----------- -------                                                   
lock_sga                             boolean     FALSE                                             
pre_page_sga                         boolean     FALSE                                        
sga_max_size                         big integer 744M                                           
sga_target                           big integer 0                                                     
SQL> show parameter memory                                           

  NAME                                TYPE        VALUE                          
------------------------------------ ----------- -------                               
hi_shared_memory_address             integer     0                       
memory_max_target                    big integer 1232M                  
memory_target                        big integer 1232M                        
shared_memory_address                integer     0                          

从上面的参数可以看出,memory_target 非0 说明 sga和pga是统一自动管理,就不用看sga_target 为0的意义

 

 

参考文档:http://blog.itpub.net/27009266/viewspace-775694/

                http://blog.csdn.net/tonyzhou_cn/article/details/9172639

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值