内存不足导致mysql关闭,CentOS6.5增加swap分区
某日发现mysql自动关闭了,查找错误日志发现以下错误
2017-07-14 13:07:30 5494 [Note] InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: mmap(137363456 bytes) failed; errno 12
2017-07-14 13:07:30 5494 [ERROR] InnoDB: Cannot allocate memory for the buffer pool
2017-07-14 13:07:30 5494 [ERROR] Plugin 'InnoDB' init function returned error.
2017-07-14 13:07:30 5494 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2017-07-14 13:07:30 5494 [ERROR] Unknown/unsupported storage engine: InnoDB
2017-07-14 13:07:30 5494 [ERROR] Aborting
分析说明,mysql的innodb的buffer pool需要128m的内存支持,但我的服务器内存情况如下
[root@vm172-31-0-13 home]# free -m
total used free shared buffers cached
Mem: 1877 1804 72 0 5 139
-/+ buffers/cache: 1659 217
Swap: 0 0 0
可见,剩余内存已经不足128M,而且没有swap分区,至此,mysql自动关闭了。
swap分区可以见建系统的时候创建,也可以后面用创建文件的方式创建。
我们用后者方式来创建:
1,使用dd命令创建一个swap分区
dd if=/dev/zero of=/home/swap bs=1M count=4096
这样就创建了一个分区大小为4G的/home/swap文件,接下来格式化该分区文件。
2,格式化/home/swap文件。
mkswap /home/swap
3,用swapon命令把/home/swap文件分区划成swap分区
[root@cms home]# swapon /home/swap
[root@cms home]# free -m
total used free shared buffers cached
Mem: 7872 7730 142 0 70 6394
-/+ buffers/cache: 1264 6608
Swap: 4095 0 4095
4,修改/etc/fstab文件添加/home/swap swap swap default 0 0,即使重启也能自动挂载。
[root@cms home]# vi /etc/fstab
#
# /etc/fstab
# Created by anaconda on Tue Jan 26 21:10:02 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=f8cb78d5-8419-4bcf-8684-9e8a94480f22 / ext4 defaults 1 1
UUID=9e4bacd3-490c-4e87-a5e0-fec240a3e229 /usr xfs defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/home/swap swap swap default 0 0
"/etc/fstab" 16L, 788C written
内存不足导致mysql关闭,CentOS6.5增加swap分区的更多相关文章
- 怎么样给CentOS6.5增加swap分区
再给服务器添加zabbix监控的时候,发现服务器有个报错“Lack of free swap space on localhost”,通过查找得知,在安装服务器的时候忘了划分swap分区.为了减少报错 ...
- Centos7 增加swap分区的内存大小
Centos7 增加swap分区的内存大小 对 swap 空间的适当大小实际上取决于您的个人偏好和您的应用程序要求.通常,等于或双倍于系统内存的量是一个很好的选择 添加swap分区使用dd命令创建/h ...
- linux中增加swap分区文件的步骤方法
一.swap交换分区 Swap分区在系统的物理内存不够用的时候,把硬盘空间中的一部分空间释放出来,以供当前运行的程序使用.那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临 ...
- Linux增加Swap分区
Linux增加Swap分区 dd if=/dev/zero of=/data/swap/swapfile1 bs=4096 count=2097152 mkswap /data/swap/swapfi ...
- [转]LINUX新建和增加SWAP分区
以前做过增加swap分区的事情,今天一个同事问到我如何做,故记个笔记整理一下吧.另外,以前我写过“交换分区swap的大小分配”,大家也可先看一下. 我们都知道在安装Linux系统时在分区时可以分配sw ...
- linux下增加swap分区
Swap交换分区概念 什么是Linux swap space呢?我们先来看看下面两段关于Linux swap space的英文介绍资料: Linux divides its physical RAM ...
- LINUX增加SWAP分区---install_oracle
我们都知道在安装Linux系统时在分区时可以分配swap分区,而系统安装后(在运行中)如何建立或调整swap分区呢?在装完Linux系统之后,建立Swap分区有两种方法.1.新建磁盘分区作为swap分 ...
- 增加swap分区
起因:开发人员说tomcat关闭了,然后我排查了下,发现内存耗尽,然后临时用swap分区,以供当前运行的程序使用. 先用free -h查看一下swap的大小 1.添加swap分区 使用dd命令创建/h ...
- centos 手动增加swap分区
SWAP是Linux中的虚拟内存,用于扩充物理内存不足而用来存储临时数据存在的.它类似于Windows中的虚拟内存.在Windows中,只可以使用文件来当作虚拟内存.而linux可以文件或者分区来当作 ...
随机推荐
- VSCODE开发VUE.JS前端插件
VUE前端插件.转载自:https://www.cnblogs.com/karthuslorin/p/8577224.html vscode是微软开发的的一款代码编辑器,就如官网上说的一样,vscod ...
- IPV6基础
Pv6与IPv4的区别 Pv6报文与IPv4报文差别就两个地方: 一个是数据链路层(以太网协议)中协议类型,IPv4是0x0800,IPv6是0x86DD 另一个是IPv6 Header是40字节,I ...
- PHP中获取当前页面的完整URL、PHP URL处理、获取不带扩展名的文件名
javascript实现: top.location.href 顶级窗口的地址this.location.href 当前窗口的地址 PHP实现 #测试网址: http://localhost/blog ...
- dockerfile中配置时区
https://www.cnblogs.com/kevingrace/p/5570597.html #设置时区RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai ...
- java:nginx(java代码操作ftp服务器)
1.检查是否安装了vsftpd [root@linux01 ~]# rpm -qa|grep vsftpd 2.安装vsftpd [root@linux01 ~]# yum -y install vs ...
- ceph添加/删除OSD
一.添加osd: 当前ceph集群中有如下osd,现在准备新添加osd: (1)选择一个osd节点,添加好新的硬盘: (2)显示osd节点中的硬盘,并重置新的osd硬盘: 列出节点磁盘:ceph-de ...
- Qt qss 动态属性-不同条件不同显示
一. 1.为了用户界面外观的动态变化,属性选择器可以与动态属性组合使用. 2.当一个属性值变化时,所引用的样式不会自动更新.相反地,必须手动触发更新才会生效.unpolish()用于清理之前的样式,而 ...
- vue项目中使用组件化开发
最近在使用vue-cli结合webpack打包工具开发一个后台管理系统,使用vue难免需要运用组件化思想,而这也正是vue的一大特点. 在之前做的vue项目中,稍微有一点组件化的思想,可能是对组件化不 ...
- 1.2.2 OSI参考模型 上
一.HCNA网络技术学习指南 为了实现网络的互通及各种各样的网络应用,网络设备需要运行各种各样的协议已实现各种各样具体的功能.面对各种各样且数量繁多的功能,我们可以从网络架构的角度,引入功能分层的模型 ...
- 【机器学习】转导推理——Transductive Learning
在统计学习中,转导推理(Transductive Inference)是一种通过观察特定的训练样本,进而预测特定的测试样本的方法.另一方面,归纳推理(Induction Inference)先从训练样 ...