Mariadb 的总是运行着就挂了的解决方法

前不久因为之前的 VPS 有问题,所以就在阿里云重建了自己的博客, 满心欢喜的使用的时候发现他很快就挂了…

我检查后台发现mariadb is dead, 又是数据库挂, 很纠结. 查了一下,发现很多人都遇到一样的问题, 看到一篇帖子提到了配置,我检查我的数据库配置,其实咩有做什么特别的,也没有深度优化,就是最基本的,为何还会挂? 检查日志发现…狗日的内存不够了.直接显示 out of memory…

free -m 检查发现果然内容不够用了.

还发现 swap 分区基本都是空的.

所以, 我们需要尝试去创建一个交换文件

将“swap”添加到Linux服务器允许系统将正在运行的程序的不太经常访问的信息从RAM移动到磁盘上的位置。访问存储在磁盘上的数据比访问RAM慢得多,但交换可用通常是应用程序处于活动状态和崩溃之间的区别。如果您打算在系统上托管任何数据库,这一点尤其有用。

有关交换空间的最佳大小的建议因所咨询的来源而异。一般来说,等于或者是系统内存量的两倍是一个很好的想法。

使用该fallocate实用程序分配要用于交换文件的空间例如,如果我们需要一个2GB的文件,我们可以/swapfile通过输入以下命令创建一个交换文件

sudo fallocate -l 2G /swapfile

创建文件后,我们需要限制对文件的访问,以便其他用户或进程无法看到写入的内容:

sudo chmod 600 /swapfile

我们现在有一个具有正确权限的文件。要告诉我们的系统格式化交换文件,我们可以输入:

sudo mkswap /swapfile

现在,通过输入以下命令告诉系统它可以使用交换文件:

sudo swapon /swapfile

我们的系统在此会话中使用交换文件,但我们需要修改系统文件,以便我们的服务器在启动时自动执行此操作。你可以通过输入以下命令来完

sudo sh -c 'echo "/swapfile none swap sw 0 0" >> /etc/fstab'

有了这个补充,你的系统应该在每次启动时自动使用你的交换文件。

好了,数据库恢复了,跑一段时间再看看.

另外,发现我才更新了3篇帖子就发现有人来访问了…是真的假的?

好吧,有友链的赶紧发过来吧…

 

发布者

yoyojacky

我是骑驴玩儿漂移, 喜欢玩儿电子,喜欢的编程语言, C, shell, python, 爱玩儿的开发板: 树莓派, arduino,STM32系列, 还有3D 打印机,四轴飞行器,业余时间也喜欢玩儿吉他,非洲鼓. 欢迎来光临我的小站~

发表评论

This site uses Akismet to reduce spam. Learn how your comment data is processed.