小记vps MySQL启动故障

五一长假回来上班,发现自己的blog访问不了,尝试远程登陆,也是失败。在vultr 网站登陆,重启了服务器之后,发现短暂可以正常访问,很快就提示数据库无法连接。检查lnmp status,发现MySQL 不断被后台杀掉,网上搜到很多文章是讲如何优化my.cnf 减少资源占用的,比如 https://stackoverflow.com/questions/47268142/mysqld-is-getting-killed-by-own 和https://blog.csdn.net/cailongbiaoyuli/article/details/83748977。

照文章中的介绍,修改了my.cnf后,似乎比原来坚持的时间久一点,但没多久还是会挂掉。不记得怎么看到要查看内存使用情况的,敲了free -m,发现swap分区没有了。添加swap分区后,需要添加到启动,所以需要修改fstab,结果手贱改了uuid 下面的内容,重启后发现整个root 都readonly了。网上很多文章都是讲执行 mount -o remount,rw / 就可以重新编辑fstab了,实测失败,最后是用https://my.oschina.net/u/4332081/blog/3293521 介绍的办法,在vultr 的console 下面操作,才重新把fstab修复成功。

再记录一下自己swap 分区的创建方式:

sudo dd if=/dev/zero of=/var/swap bs=1M count=1024
sudo chmod 600 /var/swap
sudo mkswap /var/swap
sudo swapon /var/swap

创建成功后,再free -m查看,就会看到成功创建swap分区了。

然后修改fstab,添加

/var/swap swap swap defaults 0 0

保存后重启,再次开机swap分区也会自动挂载了。

删除swap分区的方式

swapoff /var/swap   //停止swap分区
rm -rf /var/swap    //删除swap分区

然后修改fstab,删除添加的swap 分区启动的内容就可以了。