这两天服务器上面的mariadb数据库总是莫名的crash掉,从数据库的崩溃日志中发现一段错误日志‘InnoDB: mmap(137756672 bytes) failed; errno 12’,通过分析查看很多网友也是遇到了类似的问题,于是按排查思路定位到,归根结底是系统内存资源不够,先通过增加swap来初步应对一下。排查以及处理的步骤如下。
分析解决步骤:
1、先系统查看下内存使用情况,swap一点空间没有,服务器的本身内存只有4G太少了。
2、我这里在根目录下面专门创建了一个swap目录用于存放自定义缓存文件,我创建了4G的swap.
#mkdir /swap
3、确保安全,修改权限,更改文件的权限
# chmod 600 /swap/tempswap
4、格式化新增加的文件,格式化为交换分区,并将其添加到交换空间:
# mke2fs /swap/tempswap
# mkswap /swap/tempswap
# swapon /swap/tempswap
5、最后补充,如希望在系统再次启动时,自动启用刚增加的swap,可编辑/etc/fstab文件,
以上为我初步处理的步骤,仅供分享参考