【解决】MySql 5.6 运行崩溃错误

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

【解决】MySql 5.6 运行崩溃错误


最近弄了一台云主机,配置是20G磁盘空间,1G运行内存的Linux服务器。在上面安装了LAMP(RHEL7.2+Apache2.4+MySql5.6+PHP5.6),然后搭建wordpress网站,可是网站运行没多久,就出现了连接不上数据库。到服务器上使用:ps -aux |grep mysql,发现MySql服务并没有运行,很纳闷怎么运行好好的,就自己停止了。查看了下日志有如下错误提示:

1
2
3
4
5
6
7
2016-02-20 00:11:03 2762 [Note] InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: mmap(137363456 bytes) failed; errno 12
2016-02-20 00:11:03 2762 [ERROR] InnoDB: Cannot allocate memory for the buffer pool
2016-02-20 00:11:03 2762 [ERROR] Plugin 'InnoDB' init function returned error.
2016-02-20 00:11:03 2762 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2016-02-20 00:11:03 2762 [ERROR] Unknown/unsupported storage engine: InnoDB
2016-02-20 00:11:03 2762 [ERROR] Aborting


从日志的信息看,是说缓冲区的内存不足导致服务终止,我使用: free -m 查看了服务器的内存情况:

1
2
3
        total        used         free       shared  buff /cache    available
Mem:     991           470         461         12     59         423
Swap:     0           0           0



内存是足够的,尝试再次启动MySql服务 :/etc/init.d/mysqld start结果有如下的错误:

1
Starting MySQL.. ERROR! The server quit without updating PID file (/data/mysql/mysql.pid).


尝试了好几次,都无法启动,很纳闷。

尝试调整:innodb_buffer_pool_size 参数的大小,可是还是启动不了。记得之前在虚拟机上也是同样的环境也没有出现过这样的问题,唯一不同的是,这台云主机上没有分配交换分区,是不是这个问题导致?那就增加2G的交换分区试一试。

1
2
3
dd  if = /dev/zero  of= /udata/men .swap bs=1k count=2048000
mkswap  /udata/men .swap
swapon  /udata/men .swap

将交换分区加入的/etc/fstab


vim /etc/fstab

1
UUID=24357e34-62a1-4645-b3c1-3305c61176e4     swap  swap    defaults        0 0


一切都ok了,再次尝试启动MySQL服务。

1
  /etc/init .d /mysqld  start

Starting MySQL.... SUCCESS!


成功了。。。。难道还真是这样原因。。。。观察了一段时间,暂时未出现故障。


MySQL 5.6还需要做优化。。。。还很吃内存啊。。。

1
2
3
4
free  -m
        total        used         free       shared  buff /cache    available
Mem:     991         857          73           0   60          41
Swap:    1999         670        1329



后来在国外的网站上找到了一篇解决同样问题的文章,方法都一样,地址如下:

http://www.webtrafficexchange.com/solved-mysql-crash-fatal-error-cannot-allocate-memory-buffer-pool



本文转自 巴利奇 51CTO博客,原文链接:http://blog.51cto.com/balich/1743622


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
344
分享
相关文章
轻松入门MySQL:MySQL字段类型精解,优化存储结构,助力系统高效运行(2)
轻松入门MySQL:MySQL字段类型精解,优化存储结构,助力系统高效运行(2)
114 0
运行flyway报错, MySQL 5.6 is no longer supported by Flyway Community Edition
运行flyway报错, MySQL 5.6 is no longer supported by Flyway Community Edition
146 1
基于java swing和mysql实现的汽车租赁管理系统(源码+数据库+文档+运行指导视频)
基于java swing和mysql实现的汽车租赁管理系统(源码+数据库+文档+运行指导视频)
353 0
基于Java swing和mysql实现酒店管理系统(源码+数据库+运行指导视频+系统用户使用手册+系统PPT+数据库设计说明书+系统概要说明书+需求说明书+详细说明书)
基于Java swing和mysql实现酒店管理系统(源码+数据库+运行指导视频+系统用户使用手册+系统PPT+数据库设计说明书+系统概要说明书+需求说明书+详细说明书)
365 0
mysql 8.0 日期维度表生成(可运行)
mysql 8.0 日期维度表生成(可运行)
121 2
mysql 8.0 时间维度表生成(可运行)
mysql 8.0 时间维度表生成(可运行)
174 0
实时计算 Flink版操作报错合集之运行mysql to doris pipeline时报错,该如何排查
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
基于Springboot+MYSQL+Maven实现的宠物医院管理系统(源码+数据库+运行指导文档+项目运行指导视频)
基于Springboot+MYSQL+Maven实现的宠物医院管理系统(源码+数据库+运行指导文档+项目运行指导视频)
419 0
MySQL运行在docker容器中会损失多少性能
MySQL运行在docker容器中会损失多少性能
165 0
云原生数据仓库使用问题之运行MySQL命令发现中文内容变成了问号,该如何解决
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等