某日发现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分区的更多相关文章

  1. 怎么样给CentOS6.5增加swap分区

    再给服务器添加zabbix监控的时候,发现服务器有个报错“Lack of free swap space on localhost”,通过查找得知,在安装服务器的时候忘了划分swap分区.为了减少报错 ...

  2. Centos7 增加swap分区的内存大小

    Centos7 增加swap分区的内存大小 对 swap 空间的适当大小实际上取决于您的个人偏好和您的应用程序要求.通常,等于或双倍于系统内存的量是一个很好的选择 添加swap分区使用dd命令创建/h ...

  3. linux中增加swap分区文件的步骤方法

     一.swap交换分区 Swap分区在系统的物理内存不够用的时候,把硬盘空间中的一部分空间释放出来,以供当前运行的程序使用.那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临 ...

  4. Linux增加Swap分区

    Linux增加Swap分区 dd if=/dev/zero of=/data/swap/swapfile1 bs=4096 count=2097152 mkswap /data/swap/swapfi ...

  5. [转]LINUX新建和增加SWAP分区

    以前做过增加swap分区的事情,今天一个同事问到我如何做,故记个笔记整理一下吧.另外,以前我写过“交换分区swap的大小分配”,大家也可先看一下. 我们都知道在安装Linux系统时在分区时可以分配sw ...

  6. linux下增加swap分区

    Swap交换分区概念 什么是Linux swap space呢?我们先来看看下面两段关于Linux swap space的英文介绍资料: Linux divides its physical RAM ...

  7. LINUX增加SWAP分区---install_oracle

    我们都知道在安装Linux系统时在分区时可以分配swap分区,而系统安装后(在运行中)如何建立或调整swap分区呢?在装完Linux系统之后,建立Swap分区有两种方法.1.新建磁盘分区作为swap分 ...

  8. 增加swap分区

    起因:开发人员说tomcat关闭了,然后我排查了下,发现内存耗尽,然后临时用swap分区,以供当前运行的程序使用. 先用free -h查看一下swap的大小 1.添加swap分区 使用dd命令创建/h ...

  9. centos 手动增加swap分区

    SWAP是Linux中的虚拟内存,用于扩充物理内存不足而用来存储临时数据存在的.它类似于Windows中的虚拟内存.在Windows中,只可以使用文件来当作虚拟内存.而linux可以文件或者分区来当作 ...

随机推荐

  1. LC 851. Loud and Rich

    In a group of N people (labelled 0, 1, 2, ..., N-1), each person has different amounts of money, and ...

  2. Java Web开发中路径问题小结(getRequestUrl getContextUrl getServletUrl)

    看以博客感觉不错,分享一下http://www.cnblogs.com/tianguook/archive/2012/08/31/2665755.html (1) Web开发中路径的几个基本概念 假设 ...

  3. 阶段3 3.SpringMVC·_02.参数绑定及自定义类型转换_5 自定义类型转换器演示异常

    后端自动进行类型的转换.前端输入的年龄都是字符串的形式传递到后端. user的实体类  加一个Date日期类型格式的字段.生成get和set还有toString的方法 重新部署程序 日期用横线的方式 ...

  4. python对列表中名字进行修改,在每个名字后面加入‘the Great’

    第一种方法:使用enumerate函数 def make_great(magicians): for i ,name in enumerate(magicians): magicians[i] = m ...

  5. Jmeter之Cookie和Session处理

    Jmeter之Cookie和Session处理 1.Cookie 添加方式:线程组-配置元件-HTTP Cookie 管理器,如下图: 2.Session 添加方式:线程组-前置处理器 -HTTP U ...

  6. iOS开发之点击tabBarItem进行Push一个页面

    使用场景: 实现底部Tabbar两个TabBarItem,点击第二个跳转push到个人信息页面: 实现步骤: 首先设置UITabBarController的代理为appdelegate如下:myTab ...

  7. Redis客户端基本操作以及查看慢查询

    1.连接 redis-cli.exe -h 127.0.0.1 -p 6379 2.验证密码 λ redis-cli.exe -h 127.0.0.1 -p 6379127.0.0.1:6379> ...

  8. 微信小程序动画:高度渐变,left渐变

    今天在测试微信小程序动画的时候遇到了坑,需求是这样的点击时子元素从外部滑动回来,父元素的高度跟随子元素的高度改变. 实现子元素left为0并不复杂,但是改变父元素box的高度的时候却遇到了坑,因为是需 ...

  9. 【学习笔记】APP页面,随机选择一个选项

    如下页面,一个测评功能,30个题目,每题的答案选项一样: 要实现每题自动随机选择一个答案 方法一:定义一个5个选项的列表,循环30次,然后使用random.shuffle打乱列表顺序,根据列表元素定位 ...

  10. A = min(1, max(0, A))

    Crop A into [0, 1]: