systemctl status mysqld.service或者systemctl start mysqld 启动失败的解决办法

2022-09-27 08:26:27

报错过程:

mysql需要重启,执行一下命令启动mysql:

systemctl start  mysqld.service

出现一下提示,启动失败:

Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.

根据提示运行命令查看错误:

systemctl status mysqld.service

输出:

 mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: failed (Result: start-limit) since Tue 2019-12-03 20:54:05 CST; 19s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 10333 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=1/FAILURE)
  Process: 10316 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)

Dec 03 20:54:05 10-46-165-232 systemd[1]: Failed to start MySQL Server.
Dec 03 20:54:05 10-46-165-232 systemd[1]: Unit mysqld.service entered failed state.
Dec 03 20:54:05 10-46-165-232 systemd[1]: mysqld.service failed.
Dec 03 20:54:05 10-46-165-232 systemd[1]: mysqld.service holdoff time over, scheduling restart.
Dec 03 20:54:05 10-46-165-232 systemd[1]: start request repeated too quickly for mysqld.service
Dec 03 20:54:05 10-46-165-232 systemd[1]: Failed to start MySQL Server.
Dec 03 20:54:05 10-46-165-232 systemd[1]: Unit mysqld.service entered failed state.
Dec 03 20:54:05 10-46-165-232 systemd[1]: mysqld.service failed.

输出信息,没半点用。

然后囔,自己想办法吧。

以下是我的解决此类问题的办法,这里是内存的问题,其他问题也按照这个方式来查找问题即可。

解决过程:

问题定位的关键需要查看msyql日志。

①运行以下命令查看mysql配置文件位置:

mysql --help | grep my.cnf

结果:发现配置文件在/etc/my.cnf

②查看配置文件,发现错误日志输出在/var/log/mysqld.log

③查看错误日志:这样就就能找到真正的错误原因了。这里是磁盘空间满了,没有空间了。

④查看硬盘状态:

执行命令:

df -h

结果:

再去清理内存,然后启动mysql就可以了。

  • 作者:grootblockchain
  • 原文链接:https://blog.csdn.net/CaptainJava/article/details/103377118
    更新时间:2022-09-27 08:26:27