mysql启动失败active:failed 解决方法

今日,已经在linux服务器运行了一年多的mysql突然挂掉了两次,用navicat连接不上。第一次是在早上,发现挂了之后,马上就用mobaXterm登录到腾讯云服务器,输入命令

systemctl restart mysqld.service

即将mysql重新跑起来了。但今天下午,又出现了挂掉的情况,不管那么多,还是采用上午的方法,但这次却不管用了,执行命令之后,却报错了,错误显示如下:

那就按提示输入命令

systemctl status mysqld.service

吧,然后执行,显示如下:

mysql启动失败active:failed 解决方法_第1张图片这里还是完全看不出什么错误。。认真回想了一下,最近在这个服务器上部署了几个项目,而且没有做优化的那种,我猜想很有可能是服务器内存不够用,导致mysql挂掉了,而且也启动不起来。

这样想了以后,还是不能确定原因,那还是需要找出具体原因。mysql是有启动日志文件的,查了一下,找到了启动日志文件所在路径,即/var/log/mysqld.log(查找方法,可以看/etc/my.cnf文件,最后一张图片有显示),用cat 命令显示该日志文件,拉到最底,发现了错误原因:mysql启动失败active:failed 解决方法_第2张图片

只见显示InnoDB:Cannot allocate memory for the buffer pool,哈哈,原来是内存不足,不够分给缓冲池了。。既然这样,那就好办了,如上图所示,初始化缓冲池需要128m,那就想办法让他小于128m吧。

修改mysql的配置文件,/etc/my.cnf,只修改一个配置参数,即innodb_buffer_pool_size,原本是注释掉的,现在放开注释,而且将值改为100M。命令如图:

mysql启动失败active:failed 解决方法_第3张图片

重新执行mysql启动命令,即可成功启动mysql。。。。

你可能感兴趣的:(mysql)