阿里云vps上mysql挂掉的解决办法

用阿里云的vps用作blog服务器,系统很稳定,已经100多天一直运行正常,大概从上个月开始发现blog的mysql会有时挂掉,会收到短信通知。之前没太追究,重新启动了mysql解决的。今天上午又收到短信,已经第三次了。

查了一下日志,三次基本都是一样的:

130728  6:50:14 [Note] Plugin 'FEDERATED' is disabled.
130728  6:50:14 InnoDB: The InnoDB memory heap is disabled
130728  6:50:14 InnoDB: Mutexes and rw_locks use GCC atomic builtins
130728  6:50:14 InnoDB: Compressed tables use zlib 1.2.3.4
130728  6:50:14 InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: mmap(137363456 bytes) failed; errno 12
130728  6:50:14 InnoDB: Completed initialization of buffer pool
130728  6:50:14 InnoDB: Fatal error: cannot allocate memory for the buffer pool
130728  6:50:14 [ERROR] Plugin 'InnoDB' init function returned error.
130728  6:50:14 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
130728  6:50:14 [ERROR] Unknown/unsupported storage engine: InnoDB
130728  6:50:14 [ERROR] Aborting
130728  6:50:14 [Note] /usr/sbin/mysqld: Shutdown complete

解决方法:
1) 在 /etc/mysql/my.cnf 的 mysqld 下增加下面一句:

innodb_buffer_pool_size = 64M

还要设置一下swap分区,因为我的vps是没有swap分区的,通过fdisk -l1mount 看不到swap的信息,需要手动添加一下。

2) 添加swap分区的步骤:

2.1) dd if=/dev/zero of=/swapfile bs=1M count=1024
2.2) mkswap /swapfile
2.3) swapon /swapfile
2.4) 添加这行: /swapfile swap swap defaults 0 0 到 /etc/fstab

目前已经设置了swap分区,并重启了mysql,后续观察一下看看还会不会出现吧。

参考:http://stackoverflow.com/questions/10284532/amazon-ec2-mysql-aborting-start-because-innodb-mmap-x-bytes-failed-errno-12

补充,经过近2个月观察,没再发生down掉的情况。

阿里云vps上mysql挂掉的解决办法》上有8条评论

  1. Pingback引用通告: 回顾2013 | 在路上

  2. Pingback引用通告: wordpress博客搭建 | 子龙山人

    1. hongjiang 文章作者

      swap是交换分区(或交换文件),内存不足时会被os使用,添加方式在“ 2) 添加swap分区的步骤” 里面写了。

      回复
  3. riparia

    我也遇到了同样的问题:阿里云wordpress稳定运行了大半年,最近mysql每天一挂。我觉得头痛未必是头的问题,我装了个mysqltuner检查了一下发现有大量未释放的连接。查看apache日志发现大量来自191.96.249.53和191.96.249.54的向/xmlrpc.php的post请求。我把这两个ip封了,就不再出现未释放的连接了。可能有人针对wordpress站点进行了攻击。

    回复
      1. S

        头都大了,一天俩次,LNMP环境,设置为64一样挂···2G内存,2M带宽···三个站点,插件安装三个站加起来才15个,阿里云就他妈狗篮子···

        回复
        1. S

          问客服,要我加内存,一千三百多的服务器运行三个站就这样!愁死了,不是专业的解决帧麻烦···

          回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注