hpux filecache问题
近期数据库服务器内存利用率总是达到将近100%
比较恐怖
使用HP的kmeminfo脚本看了一下
----------------------------------------------------------------------
Physical memory usage summary (in page/byte/percent):
Physical memory = 8380477 32.0g 100%
Free memory = 29960 117.0m 0%
User processes = 3027704 11.5g 36% details with -user
System = 1819307 6.9g 22%
Kernel = 1819269 6.9g 22% kernel text and data
Dynamic Arenas = 935977 3.6g 11% details with -arena
spinlock_arena = 86572 338.2m 1%
FCACHE_ARENA = 84560 330.3m 1%
btree_chunk_are = 82862 323.7m 1%
vm_alias_table_ = 72001 281.3m 1%
reg_fixed_arena = 68851 268.9m 1%
Other arenas = 541131 2.1g 6% details with -arena
Super page pool = 271806 1.0g 3% details with -kas
Static Tables = 494448 1.9g 6% details with -static
pfdat = 409202 1.6g 5%
vhpt = 65536 256.0m 1%
text = 9020 35.2m 0% vmunix text section
bss = 6692 26.1m 0% vmunix bss section
inode = 1792 7.0m 0%
Other tables = 2203 8.6m 0% details with -static
Buffer cache = 38 152.0k 0% details with -bufcache
UFC file mrg = 3450659 13.2g 41%
其中的UFC file mrg占用了41%的内存。
并且,在我减少了oracle的1Gpga之后,这1G空间很快被吃掉,系统内存利用率仍然很紧张。
咨询了HP方面的人,这个文件cache默认占到内存的5%-50%.
HN-ZYFW1#[/tmp/newshell]kctune | grep filecache
filecache_max 16324354048 Default Auto
filecache_min 1632432128 Default Auto
尝试减少这个设置
kctune filecache_max=39%
之后,free的内存数立即有了变化。
可惜,没有测试环境,不知道,如果把oracle的数据文件拆分成比较小一些的文件,会不会使filecache的利用率更合理?