
Aktualisieren Ich konnte die Datei mysqld.service erstellen, indem ich /etc/systemd/system exist verwendete, wie von Robert Longson vorgeschlagen
Jetzt hat sich mein Problem geändert. Wenn ich den Dienst starte, schlägt er fehl. Ich habe es ausgeführt
systemctl status mysqld.service
und hier ist die Ausgabe:Loaded: loaded (/etc/systemd/system/mysqld.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Sun 2020-03-29 19:01:25 CDT; 38s ago Docs: man:mysqld(7) http://dev.mysql.com/doc/refman/en/using-systemd.html Process: 9251 ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --daemonize --pid mysqld.service: Service hold-off time over, scheduling restart. mysqld.service: Scheduled restart job, restart counter is at 5. Stopped MySQL Server. mysqld.service: Start request repeated too quickly. mysqld.service: Failed with result 'exit-code'. mysqld.service: Failedto start MySQL Server
Ich versuche, MySQL Server 5.7 nach der Installation zum ersten Mal mit systemd zu starten. Im Handbuch steht, dass ich eine Konfigurationsdatei in /usr/lib/systemd/system erstellen soll.aber dieses Unterverzeichnis existiert nicht(Ich verwende Ubuntu 18.04). Ich folge dieser Anleitung:
So konfigurieren Sie die MySQL-Installation für die Arbeit mit systemd:
- Fügen Sie eine Konfigurationsdatei für die systemd-Diensteinheit mit Details zum MySQL-Dienst hinzu. Die Datei heißt mysqld.service und befindet sich im Verzeichnis /usr/lib/systemd/system.
shell> cd /usr/lib/systemd/system
shell> touch mysqld.service
shell> chmod 644 mysqld.service
Da ich das Unterverzeichnis „system“ von systemd nicht habe, habe ich einfach die Datei mysql.service erstelltdirektin /usr/lib/systemd. Nachdem ich den Rest der Anweisungen befolgt hatte, kam ich zu:
shell> systemctl start mysqld
aber es schlug fehl mit:
Failed to enable unit: Unit file mysqld.service does not exist.
Kann mir bitte jemand erklären, was ich falsch gemacht habe? Danke.
Antwort1
Servicedateien befinden sich tatsächlich in /etc/systemd/system und nicht in /usr/lib/systemd/system
Wenn Sie herausfinden möchten, warum Ihr Dienst fehlschlägt, können Sie entweder Folgendes versuchen systemctl status mysqld
oder für ein vollständigeres Protokoll beispielsweise im Befehl „journalctl“ nachsehen journalctl -u mysqld -S today
.