用了瓦工的鸡鸡内存有点小,只有 512M,而自动生成的交换空间 SWAP 也只有 132M,跑 MySQL 很容易挂,所以需要增大 SWAP 空间
环境
- 系统:Ubuntu 20.04 LTS
配置 SWAP
查看内存和交换空间大小
使用 free 确认当前是否有交换空间并查看大小,-m 代表以 M 为单位,-h 代表以 G 为单位
$ free -m
total used free shared buff/cache available
Mem: 493 130 82 2 280 340
Swap: 132 0 132
新建交换空间文件
默认 SWAP 文件在系统根目录下,我们可以直接创建新的文件
- of 参数是交换空间文件的路径和名字,这里依然放在系统根目录,但为了名字不与原来但 SWAP 冲突,则命名为 SWAPFILE
- bs 参数是块大小,这里是每块 1M
- count 参数是总共块的数量,这里设置 2048 块,所以新建的交换空间大小为:1M × 2048 = 2G
$ sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
格式化交换空间
$ sudo mkswap /swapfile
启用交换空间文件
$ sudo swapon /swapfile
此时可以查看是否生效
$ free -m
total used free shared buff/cache available
Mem: 493 124 81 2 286 346
Swap: 2048 0 2048
添加开机启动
如果不添加开机启动,则在下次重启机器后会自动被清除,修改 fstab 文件
$ sudo vi /etc/fstab
删除里面 /swap 开头的那一行,并替换为
/swapfile swap swap defaults 0 0
保存并重启
$ sudo reboot
验证
重启成功后,进入服务器查看当前交换空间大小
$ free -m
total used free shared buff/cache available
Mem: 493 124 81 2 286 346
Swap: 2047 1 2048
可以看到生效了,而旧的交换空间文件 /swap 也可以删除了
$ sudo rm /swap