通过top命令查看linux内存占用比很高,有时能达到90%以上。
查询相关资料发现linux内存使用是优先使用物理内存,所以导致memery cached 很大,
这部分也是可以算在可用内存中的。
查看具体的内存使用情况
free -m
total used free shared buffers cached
Mem: 516100 459223 56876 0 1807 428883
-/+ buffers/cache: 28532 487568
Swap: 102399 31 102368
这里cached有400个g,free只有50多,总的可用空间有 free+buffers+cached = 490g
虽然不会影响实际使用,但是为了不再让监控报警,试着减小一些cached
一般情况下,数据库的日志文件是会算进cached 的,尽量删除不必要的日志文件。
这里发现还有一个dmp文件很大,有40g,尝试删除了这个文件。
rm fullexp.dmp
rm: remove regular file `fullexp.dmp'? y
再次查看内存使用情况
free -m
total used free shared buffers cached
Mem: 516100 425666 90434 0 1840 395858
-/+ buffers/cache: 27966 488133
Swap: 102399 31 102368
果然free上升了40g,而cached减小了40
--结论,linux会将一些用到的文件放入cached,虽然这些进程已结束,但linux不会主动释放cached,从而导致物理内存free很少。
建议经常性的删除无用的日志文件,dmp文件,从而减少linux的cached memery
查询相关资料发现linux内存使用是优先使用物理内存,所以导致memery cached 很大,
这部分也是可以算在可用内存中的。
查看具体的内存使用情况
free -m
total used free shared buffers cached
Mem: 516100 459223 56876 0 1807 428883
-/+ buffers/cache: 28532 487568
Swap: 102399 31 102368
这里cached有400个g,free只有50多,总的可用空间有 free+buffers+cached = 490g
虽然不会影响实际使用,但是为了不再让监控报警,试着减小一些cached
一般情况下,数据库的日志文件是会算进cached 的,尽量删除不必要的日志文件。
这里发现还有一个dmp文件很大,有40g,尝试删除了这个文件。
rm fullexp.dmp
rm: remove regular file `fullexp.dmp'? y
再次查看内存使用情况
free -m
total used free shared buffers cached
Mem: 516100 425666 90434 0 1840 395858
-/+ buffers/cache: 27966 488133
Swap: 102399 31 102368
果然free上升了40g,而cached减小了40
--结论,linux会将一些用到的文件放入cached,虽然这些进程已结束,但linux不会主动释放cached,从而导致物理内存free很少。
建议经常性的删除无用的日志文件,dmp文件,从而减少linux的cached memery