oracle 11G memory_max_target参数无效

帮忙看看我设置的几个参数:show parameter sgaNAME                                 TYPE             ...显示全部
帮忙看看我设置的几个参数:
show parameter sga
NAME                                 TYPE                             VALUE
------------------------------------ -------------------------------- ------------------------------
lock_sga                             boolean                          FALSE
pre_page_sga                         boolean                          FALSE
sga_max_size                         big integer                      12G
sga_target                           big integer                      10G
SQL> show parameter mem
NAME                                 TYPE                             VALUE
------------------------------------ -------------------------------- ------------------------------
hi_shared_memory_address             integer                          0
memory_max_target                    big integer                      12G
memory_target                        big integer                      12G
select 'SGA' AS NAME,ROUND(sum(value)/1024/1024/1024,2)||'G' AS "SIZE(G)" from v$sga                                                                                                         
UNION                                                                                                                                                                                   
select 'PGA' AS NAME,ROUND(value/1024/1024,2)||'M' AS "SIZE(M)" from v$pgastat where name='total PGA allocated'                                                                        
UNION                                                                                                                                                                                   
select 'TOTAL' AS NAME,((SELECT ROUND(sum(value)/1024/1024/1024,2) from v$sga)+(select ROUND(value/1024/1024/1024,2) from v$pgastat where name='total PGA allocated'))||'G' AS "SIZE(M)" FROM DUAL
UNION                                                                                                                                                                                                                                                                                                                                                                        
SELECT NAME,TO_CHAR(VALUE) FROM V$PGASTAT WHERE NAME='process count';
NAME                                                             SIZE(G)
---------------------------------------------------------------- -----------------------------------------
PGA                                                              621.62M
SGA                                                              11.95G
TOTAL                                                            12.56G
process count                                                    196
[oracle@bpmora ksession]$ free -m
             total       used       free     shared    buffers     cached
Mem:         15953      15796        156          0         60      11516
-/+ buffers/cache:       4219      11734
Swap:        17178       4704      12474
我想问一下我memory_max_target设置的是12G,为什么oracle总共用的内存会多于12G啊,还有我这台主机共16G,这台机器上就跑了一个oracle,
其他什么都没跑,如果oracle共用了12.5G,那应该还有内存的,为什么就剩这么点内存了啊,才156M,这个有什么方法能排查一下哪里把其他的
内存占用了吗?收起
参与8

查看其它 3 个回答张东焕的回答

张东焕张东焕  技术总监 , IBM官方授权讲师
用操作系统命令看看都是那些进程使用内存,AIX和Linux的命令不太一样。
IT咨询服务 · 2015-09-14
浏览1674

回答者

张东焕
技术总监IBM官方授权讲师

张东焕 最近回答过的问题

回答状态

  • 发布时间:2015-09-14
  • 关注会员:1 人
  • 回答浏览:1674
  • X社区推广