给512MB RAM GCP 美区实例添加交换空间 

最近博客经常提示 db error,mariadb 总是莫名其妙的shutdown.查看error.log 发现是 out of memory.

说实话这512MB的VPS我实在不知道该怎么优化,只好寄希望于加个swap space 来顶一顶。好在机器的硬盘还算大。打算分配个1GB出来。

首先在本地创建一个1GB大小的swapfile.

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

别用下面这个命令,会出错。因为它是快速划分空间,并不会即时占用原始大小的空间。

fallocate -l 1G /swapfile //会出错

接下来:

chmod 600 /swapfile //更改权限为 600.

mkswap /swapfile //创建交换格式文件

swapon /swapfile //启用交换文件

接下来可以用过 free -h 或者 htop 或者 swapon -s 看到 swap 已经生效了。

如果你嫌每次都要手动挂载swap 麻烦,可以把配置写入fstab,让其开机自动挂载。
编辑 /etc/fstab 文件,载入一行

/swapfile swap swap rw 0 0


保存即可。重启下可以看到已经生效了。

注:我的系统是CentOS 7.

本文撰写时候参考了以下文章:
https://aws.amazon.com/cn/premiumsupport/knowledge-center/ec2-memory-swap-file/
https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-centos-7

评论