linux内存占用过高问题解决方法

1.使用top查看内存的占用情况,然后键入”M”命令根据内存的占用情况降序排列(“P”是CPU占用情况降序排列)

2.关闭掉不需要的进程,

3.再使用top查看内存占用情况,发觉内存占用率已经降下来了,但是free-g却还有100G被占用(内存总共128G),vmstat发现是cache 占用了大量内存。

4.使用 echo 1 > /proc/sys/vm/drop_caches 释放缓存

常用的释放缓存的命令如下

To free pagecache:仅清除页面缓存(PageCache)

1
echo 1 > /proc/sys/vm/drop_caches

To free dentries and inodes:清除目录项和inode

1
echo 2 > /proc/sys/vm/drop_caches

To free pagecache, dentries and inodes:清除页面缓存,目录项和inode

1
echo 3 > /proc/sys/vm/drop_caches

5.再使用free -g 查看内存使用情况,发现内存使用情况已经正常了。