MySQL 5.7 Kein Verzeichnis, Anmeldung mit HOME = /

16

Es tut mir leid, wenn diese Frage bereits gestellt wurde, aber ich kann keine Lösung für dieses (möglicherweise kleine) Problem finden:

Ich habe gerade eine Neuinstallation von mysql-server 5.7 auf einem 14.04 Server gemacht. Bei jedem Start des MySQL-Dienstes erhalte ich folgende Fehlermeldung:

root@xxx:/etc/mysql# service mysql restart
 * Stopping MySQL Community Server 5.7.11
...
 * MySQL Community Server 5.7.11 is stopped
 * Re-starting MySQL Community Server 5.7.11
No directory, logging in with HOME=/
..
 * MySQL Community Server 5.7.11 is started

Was bedeutet das? Muss ich dem Benutzer "mysql" ein Home-Verzeichnis zuweisen? (und wenn ja, welche ist die beste Wahl? / home / mysql ??) Nun ist es zu / nonexistent:

mysql:x:110:106:MySQL Server,,,:/nonexistent:/bin/false

aber ich habe eine andere Maschine mit der gleichen / nicht vorhandenen, und es zeigt keinen Fehler ...

die Nüsse
quelle
1
/ var / log / mysql
;-)
ok, in meinem Fall hat es angefangen und scheint gut zu funktionieren, es zeigt nur diesen Hinweis
the_nuts

Antworten:

30

Nachdem ich das gleiche Problem hatte, um diesen Fehler zu beseitigen, habe ich Folgendes getan

  1. Stoppen Sie den MYSQL-Dienst:

    sudo service mysql stop

  2. Ändern Sie das Ausgangsverzeichnis von mysql von nicht vorhanden in das ursprüngliche Verzeichnis, in dem es sich befinden soll:

    sudo usermod -d /var/lib/mysql/ mysql

Starten Sie nun den MySQL-Server erneut mit:

sudo service mysql start

Die Fehlermeldung ist verschwunden. Trotzdem ist nicht bekannt, warum dies passiert.

Abdul Hayee
quelle
1
Es könnte eine Abhilfe sein, aber ich würde dem nicht zustimmen. / home / ist für Benutzer. Nicht zum Erstellen eines Platzes für Dummy-Benutzer, die für Sicherheit / Berechtigungen / was auch immer benötigt werden. Die Person, die / home / mysql vorschlägt und einen tatsächlichen mysql-Benutzer erstellt, sollte ernsthaft gerügt werden .
Rinzwind
/ var / lib o / var / log? Wie auch immer, dieses Verzeichnis scheint nicht mit Daten
gefüllt zu
2
Ja, dies ist eine Umgehung. Lassen Sie mich wissen, wann Sie eine Lösung finden.
Abdul Hayee
1
Laut diesem Beitrag hat Red Hat das MySQL-Ausgangsverzeichnis auf festgelegt /var/lib/mysql. Das scheint also in
Ordnung zu sein
2
Für das, was es wert ist, bekam ich diese Fehlermeldung, als ich mysql in Windows WSL ausführte. Der Fehler trat nicht mehr auf, nachdem ich mysqld.exe unter Windows beendet hatte. Port 3306 wurde vom Windows-Prozess beansprucht.
Azeirah,
0

Ich würde weiterhin eine dauerhafte Lösung vorschlagen, wenn diese immer in demselben Verzeichnis abläuft, in dem sich der Benutzer mysql vermutlich befinden sollte.

mysql:x:106:111:MySQL Server,,,:/var/lib/mysql/:/bin/false
h. sicher
quelle