服务器内存不足 创建swap分区暂时缓解

swap 分区通常被称为交换分区,这是一块特殊的硬盘空间,即当实际内存不够用的时候,操作系统会从内存中取出一部分暂时不用的数据,放在交换分区中,从而为当前运行的程序腾出足够的内存空间。但是频繁地读写硬盘,会显著降低操作系统的运行速率。伙伴们可以酌情使用。

1、通过虚拟文件的方式分配虚拟内存

分配虚拟内存8G
使用dd新增一个8G的文件在根目录/(路径根据自己的环境修改)下面:

dd if=/dev/zero of=/swapfile bs=1G count=8

2、将/swapfile这个文件格式化为swap

mkswap /swapfile

3、启动/tmp/swap

swapon /swapfile

4、查看swap分区

swapon -s
Filename   Type          Size  Used  Priority
/swapfile  file 8388604  0     -2

5、设置开机自动挂载

vim /etc/fstab
添加如下内容:

/swapfile    swap           swap    defaults        0 0

6、设置服务器使用swap的倾向

vim /etc/sysctl.conf
swappiness=0的时候表示最大限度使用物理内存
swappiness=100的时候表示积极的使用swap分区
大家酌情修改,我这里设置为40

vm.swappiness=40

这个操作相当于是修改虚拟系统中的/proc/sys/vm/swappiness文件,将值改为40数值。

使配置生效的两种方式:

1、重起系统。
2、不想重起,可以通过sysctl -p动态加载/etc/sysctl.conf文件,但建议这样做之前先清空swap。

7、查看内存free -h

[root@XXXXX ~]# free -h
              total        used        free      shared  buff/cache   available
Mem:           7.6G        238M        1.1G        8.5M        6.3G        7.1G
Swap:          8.0G          0B        8.0G

你可能感兴趣的:(服务器内存不足 创建swap分区暂时缓解)