GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

MySQL startet die Verwendung von systemctl auf systemd-Linux-Distributionen nicht

Problem

Beim Versuch, MySQL mit systemctl zu starten, schlägt der Start fehl, zum Beispiel:

# systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: inactive (dead)
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
# systemctl start mysqld
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.

Lösung

Dafür kann es mehrere Ursachen geben. Einige (aber nicht beschränkt auf) Beispiele sind:

  • Ein Tippfehler in einer Konfigurationsoption in der MySQL-Konfigurationsdatei.
  • Vorhandensein einer nicht mehr verwendeten Option in der MySQL-Konfigurationsdatei.
  • Falsche Berechtigung auf Dateisystemebene.

Um herauszufinden, welcher Fehler dazu führt, dass MySQL nicht startet, gibt es mehrere Quellen, die verwendet werden können:

1. Das MySQL-Fehlerprotokoll

Standardmäßig befindet sich diese in /var/log/mysqld.log kann sich aber an einem anderen Ort befinden, wenn der Protokollfehler Option ist in der MySQL-Konfigurationsdatei festgelegt. Dies ist der beste Ausgangspunkt, aber je nach Fehler ist der Startprozess möglicherweise noch nicht einmal weit genug gekommen, um in das MySQL-Fehlerprotokoll zu schreiben.

2. Überprüfen Sie die Ausgabe von „systemctl status mysqld“

Auch die Ausgabe von „systemctl status mysqld“ kann hilfreich sein, um die Fehlerursache zu identifizieren.

# systemctl status mysqld

3. Das systemd-Journal

Das systemd-Journal kann dabei helfen, der Fehlerursache auf den Grund zu gehen. Sie können es zum Beispiel interaktiv durchsuchen mit:

# journalctl -xe

Wenn Sie das Journal hochladen müssen, um es vom Anbieter analysieren zu lassen, müssen Sie feststellen, wo es sich befindet. Dies ist systemspezifisch. Bei der Standardkonfiguration befindet sich das Journal beispielsweise unter CentOS/RHEL 7 in einem Unterverzeichnis unter /run/log/journal/ , zum Beispiel /run/log/journal/1ffd55f216ea46bd82d0f144065cc29b/system.journal. Ein anderer Speicherort kann /var/log/journal sein.

Oder Sie können das Journal wie folgt exportieren:

# journalctl > journal.log

Sobald die Fehlermeldung ermittelt wurde, verwenden Sie diese, um die Grundursache zu untersuchen.


Cent OS
  1. Beginnen Sie mit der Verwendung von systemd als Tool zur Fehlerbehebung

  2. Verwenden des Befehls systemctl zum Verwalten von systemd-Einheiten

  3. So verwalten Sie Systemd-Dienste mit Systemctl unter Linux

  4. Linux – Wie startet man Systemd ohne Default.target?

  5. So konfigurieren Sie eine separate Override.conf für mehrere MySQL-Instanzen mit Systemd

So zeigen Sie Benutzer in MySQL mit Linux an

Kein Systemd-Fan? Hier sind 14 Systemd-freie Linux-Distributionen

Verwenden von Yarn unter Ubuntu und anderen Linux-Distributionen

So installieren und konfigurieren Sie NextCloud mit LEMP auf Rocky Linux/Centos 8

mysqld_safe mysqld aus der PID-Datei /var/run/mysqld/mysqld.pid verhindert einen Neustart des Servers

Nginx beginnt nicht mit der Verwendung von systemctl