关于系统内存使用率上升问题
本帖最后由 shaochenshuo 于 2014-6-6 18:24 编辑刘老大,你好:
1.环境信息
操作系统:IBM 6.1
数据库版本:11.2.0.3 打了psu5(双节点rac)
2.遇到的问题
目前我遇到了这样的问题,最近发现操作系统的内存使用率一直在90%以上,无法确定到底是不是oracle进程导致内存使用这率么高(主机上只部署了Oracle,没有其他应该)
3.操作系统内存信息
我的操作系统内存情况如下:(因为内存使用率过高,主机工程师加了20几个G内存,现在看到的是加过内存后的信息)
svmon -G
size inuse free pin virtual mmode
memory 33554432 29139577 4414855 11108177 24634127 Ded
pg space 8388608 194057
work pers clnt other
pin 10103528 0 38505 966144
in use 24578031 15 4561531
PageSize PoolSize inuse pgsp pin virtual
s 4 KB - 9238217 75961 1641649 4676671
m 64 KB - 1243835 7381 591658 1247341
4.ORACLE 内存分配情况
ORACLE sga pag 分配情况如下:
SQL> show parameter pga
NAME TYPE VALUE
------------------------------------ ----------- -----
pga_aggregate_target big integer 20G
SQL> show parameter sga
NAME TYPE VALUE
------------------------------------ ----------- -----
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 32G
sga_target big integer 32G
5.查看操作系统上进程占用内存情况
ps gv | head -n 1; ps gv | egrep -v "RSS" | sort +6b -7 -n -r
结果太大,放到“进程内存使用情况的附件里了”
我算了一下结果中oracle service process 进程的私有内存大小
(RSS-TRS)*/1024=40M
发现oracle service process 进程的私有内存大小,都在40m到60m之间
(计算方法参考的是刘大你的博客“理解Oracle在AIX平台上的内存使用”)
6.疑问
1)如果按上面的计算数据库有900个左右的连接,那么就是说一共需要36G左右的pga,但是我只分配了20个G
2)我该怎么查我系统的内存都被用到哪里去了呢?
希望能够得到刘大的指导,mos上找了一天了,也没找到有用的信息。
查 aix内存使用机制方面的文章 能具体点嘛,我查了不少东西,没有找到问题在哪里! 给出
svmon -G
svmon -U oracle 我不懂,我乱讲
AIXTHREAD_SCOPE有没有设成S
lru_file_repage 是1还是0
vmstat -v 问题不清晰.. 请问主机多少内存来的?
vmstat 1 2 除了sga pga 每个链接还会占用一定的内存,大概10M,900多个连接就是9G,可以对比下连接增长跟内存增长的关系看看 kubine 发表于 2014-7-22 15:32 static/image/common/back.gif
除了sga pga 每个链接还会占用一定的内存,大概10M,900多个连接就是9G,可以对比下连接增长跟内存增长的关 ...
谢谢各位的帮助,问题已经解决,是ibm的一个bug引起的。
IV53582: XMGC NOT TRAVERSING ALL KERNEL HEAPS. APPLIES TO AIX 6100-09 14/04/17 PTF PECHANGE
页:
[1]