您的位置:首页 > 大数据 > 人工智能

AIX内存简介

2014-08-31 15:25 155 查看

1. AIX内存分类

在AIX系统中,内存可以简单的分为两类,计算型内存和文件型内存。可以使用topas命令查看整个系统的运行情况,其中一个重要的部份是系统的内存使用情况,以及交换情况。

    在一个使用裸设备的系统中,文件型内存,即上面的%Noncomp和%Client,只需要占用物理内存中较少的部分;所谓好钢要用在刀刃上,我们应该把宝贵的内存资源更多地作为计算型内存 (%Comp)来使用,以提高数据库的性能。这种类型的内存主要为应用程序,如ORACLE SGA和PGA所用(ORACLE SGA 为pinned memory)

2. 认识与数据库服务器性能相关的内存参数

对于AIX操作系统下的数据库服务器,以下三个参数可以调整内存使用策略:

minperm%

如果由文件页面占有的实际内存的百分比低于这个级别,则页面替换算法既替换文件页面也替换计算页面

maxperm%

如果由文件页面占有的实际内存的百分比高于这个级别,则页面替换算法仅替换文件页面。

maxclient%

指定能用于客户机页面的最大内存百分数的调整参数。如果由文件页面占有的实际内存的百分比高于这个级别,则页面替换算法仅替换客户机页面。 

当由文件页面占有的实际内存的百分比处于 minperm和 maxperm之间时,VMM通常只替换文件页面,但是如果文件页面的重新调页(repaging)率高于计算页面的重新调页率的话,计算页面也被替换。

minperm%, maxperm%, maxclient%这三个参数,可以根据内存总量大小,进行适度调节。计算型内存与文件型内存,在实际的应用中,需要遵循以下一些原则:

使用的文件型内存百分比 + 使用的计算型内存百分比 < 100%

计算型内存中的pinned memory设置要合理,即sga大小要设置合理,要留一部份给OS,OS也需要pinned memory.当系统资源紧张时,OS的pinned memory具有最高的优先级

保证系统非pinned 计算型 memory有一个合理的成长空间,这部份主要是给ORACLE PGA使用,当连接数增长过快时,此内存的使用增长也相当的明显,而此增长很有可能会导致操作系统的交换。

当系统的使用的文件型内存百分比 +
使用的计算型内存百分比 >= 100%,系统便开始产生交换,系统的PAGING SPACE会持续的增长,影响到产品库的安全。

3. 如何调整内存参数?

一般的数据库服务器,文件型内存可以使用较少的空间,因为文件型内存并不主动释放,可能造成内存资源的短缺及Paging Space使用率过高,所以数据库服务器上maxclient、maxperm、minperm的值不宜过大,典型值如下:

     maxclient% = 10   

     maxperm% = 15   

     minperm% = 5    

 如何更改这三个参数呢?在AIX5.3上,可以使用 vmo 命令,此命令设置或显示所有虚拟内存管理器调整参数的当前值或下一个引导值。还可以用此命令进行永久性更改,或将更改推迟到下一次重新引导之后生效。此命令是设置参数还是显示参数,要由所带标志来决定。带 -o 标志的话,两个操作都执行。它既可以显示参数的值,也可以为参数设置新值。

注意,一般按照我们的推荐值进行调整,但是在正式调整之前,强烈建议各位先了解服务器有多少物理内存,数据库分配的内存缓冲区多大,空闲的物理内存还有多少,目前% Comp、% Noncomp、%
Client各自的比例如何(topas命令),PAGING SPACE的使用率是不是很高(超过5G)等等,做到心中有数。


如果在修改这些参数前,想查看这些参数的值,则可以用下面的命令:

vmo -L 或者 vmstat -v 或者vmo –a

调整命令:

u vmo -p -o maxclient%=10

u vmo -p -omaxperm%=15

u vmo -p -ominperm%=5

利用-p参数,是立即生效的,不需要重启,下次重启仍然有效。

如果是-r参数,是不立即生效的,重启生效

调整完之后,可以使用topas工具查看调整后% Comp、% Noncomp、%
Client比例的变化,以及PAGING SPACE的使用率是否下降(可能需要重启服务器)。


备注,如果是AIX 5.3以前的操作系统,请使用vmtune命令:

查看参数值 vmtune –a

修改minperm和maxperm的值为5%和20%,vmtune -p 5 -P 20

如果是64位内核,vmtune64 -p 5 -P 20

4. 关于AIX 6.1内存管理的变化

在AIX6.1中,vmo 参数中 minperm%、maxperm%、maxclient%、lru_file_repage和page_steal_method 参数。paging space只有在AVM(活动虚拟内存)大小达到物理内存大小的 97% 以上时才会被使用。同时,系统允许 90% 的内存可以被用来做文件缓存,而在发生页交换时,系统将会优先将文件缓存页换出内存,尽量将应用程序所使用的页面保留在物理内存中。此项改变使得 AIX 6.1 对系统物理内存的利用率更高,并且对于有大量内存用来作为文件缓存的应用环境,也不再会出现文件缓存将应用内存“挤出”到
paging space 的情况出现。如果使用AIX 6.1,在内存管理方面将会更加智能,可减轻系统管理员的压力。

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  aix