AIX,全称为IBM AIX,是IBM开发的一种UNIX操作系统。最新版本为AIX 7.2。
在AIX系统中,minfree是一个重要的参数,它决定了系统在内存不足时,是否会进行换页操作。如果设置得不合理,就会导致系统出现性能问题。我们可以通过以下命令来查看minfree的值:
vmo -aF | grep minfree
在AIX系统上,如果我们安装了Oracle数据库,那么我们需要根据Oracle的建议来进行minfree的设置。Oracle建议的minfree值为:
minfree = (Total SGA + Largest PGA or UGA) / PageSize
其中,Total SGA指的是系统全局区的大小,PGA和UGA是进程相关的区域,PageSize是操作系统的页大小。这个值的计算可以使用以下命令:
svmon -G -O unit=MB -t 5 | head -2
这个命令可以让我们获取系统的内存使用情况,包括内存总量、内存使用量、全局区大小、PGA大小等信息。根据计算出来的minfree值,我们可以在AIX系统中设置vm参数,以达到最优的性能。
下面,我们来看一个实例。假设我们的Oracle数据库实例使用了10GB的SGA和2GB的PGA,而操作系统的PageSize为4KB。那么,我们需要设置的minfree值为:
minfree = (10GB + 2GB) / 4KB = 2,562,048
根据计算出来的minfree值,我们可以在AIX系统上执行以下命令来设置vm参数:
vmo -o minfree=2562048 -o maxfree=2562048 -o minperm=90 -o maxperm=95 -o lru_file_repage=0
这个命令中,minfree、maxfree、minperm、maxperm和lru_file_repage都是和内存管理有关的参数。其中,maxfree表示系统最大允许的free page数量,minperm和maxperm表示系统允许的page缓存区域大小范围,lru_file_repage表示系统是否将磁盘上的page回复到memory中。
通过上述设置,我们可以让Oracle数据库在AIX系统上运行得更加稳定和高效。