这两天折腾宝塔面板,mysql总是自动暂停,仔细一看才发现内存256M已经满了,而内存交换区也才256M,不够用,于是搜索了很多文章总结了一下需要把swap设置高一些。在此做个记录也避免以后少走点弯路。
下面是步骤:
1.输入命令 free -m 查看当前内存使用情况;
2.输入命令dd if=/dev/zero of=/swap bs=1M count=1024 (1024表示硬盘分出1G空间作为swap分区,可以根据需要灵活修改)
3.启用新swap分区,输入chmod 600 /swap设置权限(非必要)。
4.设置交换分区输入 mkswap /swap
5.启用新swap分区:输入swapon /swap
6.查看状态:swapon -s
设置开机自动挂载新分区:
编辑文件:vim /etc/fstab
在最后一行添加 /swap swap swap defaults 1 1保存退出
优化设置交换频率和缓存:
编辑文件:vim /etc/sysctl.conf
在最后一行添加:
vm.swappiness=10
vm.vfs_cache_pressure=50
保存退出。
一键脚本:
wget https://www.moerats.com/usr/shell/swap.sh && bash swap.sh