mysql 启动报错问题

Starting mysqld (via systemctl): Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details. [FAILED]

根据以上错误提示,分别使用systemctl status mysqld.service和journalctl -xe查看服务启动失败的原因:

[mysql]
Mar 25 12:51:10 ip-172-31-17-237 audit[99286]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/99286/status" pid
Mar 25 12:51:10 ip-172-31-17-237 audit[99286]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/nod Mar 25 12:51:10 ip-172-31-17-237 audit[99286]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/99286/status" pid Mar 25 12:51:11 ip-172-31-17-237 systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
并没有看出有什么错
使用tail -f /var/log/mysqld.log如下

根据日志查看:原因应该是内存不足

 free -h
解决方法:

增加swap交换空间解决问题:

dd if=/dev/zero of=1.txt bs=1M count=2 生成一个指定大小的空文件
if=文件名:输入文件名
of=文件名:输出文件名
bs=字节大小
count=个数

$ dd if=/dev/zero of=/swapfile bs=1M count=1024
$ mkswap /swapfile
$ swapon /swapfile

增加自动挂载:
在文件/etc/fstab中加入 /swapfile swap swap defaults 0 0

$ sudo vim /etc/fstab 

在下面添加/swapfile swap swap defaults 0 0

重启mysql

sudo /etc/init.d/mysql restart

重启后问题解决。

原文

猜你喜欢

转载自www.cnblogs.com/blackCatFish/p/10816943.html