Was ist der richtige Standort von mysql.sock-Datei auf linux
Ich habe eine mysql.ock Datei befindet sich unter:
/tmp/mysql.Socke
Aber die meine.cnf verweist zu dieser Stelle:
socket=/var/lib/mysql/mysql.Socke
Ist das richtig?
- Nein es gibt kein '/var/lib/mysql/mysql.sock-Datei
- Die Reihenfolge der Pfad, der mysql-sucht-Konfiguration ist
/var/lib/mysql/my.cnf
,/etc/my.cnf
,~mysql/.my.cnf
. - In einigen Fällen ist die Datei, die Sie suchen genannt werden könnte
mysqld.sock
statt. Dies ist zumindest der Fall fürVer 14.14 Distrib 5.7.22, for Linux (x86_64)
auf Ubuntu 16.04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den socket Erklärung sollten sich unter
[mysqld]
in Ihremmy.cnf
. Wenn Sie erklärt haben, es dort und noch auf anderen Ort, wietmp
, dann Ihremy.cnf
- Datei, die Sie bearbeitet haben, nicht Lesen, wenn mysql startet oder gibt es einen anderenmy.cnf
überschreiben die, die Sie bearbeitet haben. Der Fall kann auch sein, dass es eine zweiteSocket
Erklärung in der gleichenmy.cnf
- Datei, überschreiben die, die Sie erwarten, Lesen Sie beim start von mysql.Können Sie überprüfen, wird der absolute Pfad durch einloggen in mysql und läuft:
Es gibt keine richtigen oder falschen Stelle auf linux für das speichern von sockets, außer auf externen Geräten, die ausgehängt werden, jederzeit oder Ordner, die geleert werden von Zeit zu Zeit. Sie müssen konfigurieren, wo Sie es platzieren möchten.
Für die MySQL-console-client gibt es etwas mehr zu beachten: Der client scheint die socket-Konfiguration Wert der im [client] anstelle von [mysqld]. Wenn Sie mehrere MySQL-server-setup wie ich es habe (4.1, 5.5, 5.7), werden Sie wahrscheinlich wollen, benutzen Sie "--defaults-extra-file" - option mit den socket geschrieben in der [client] - Teil für jeden anderen server. Die Steckdose muss die gleiche sein, wie das definiert man in der meinen.cnf [mysqld] Teil der auf dem server verwendet.
Hier ist ein Beispiel defaults-extra-file.cnf, denken Sie daran, ändern Sie die Benutzer -, Passwort-und socket-nach Ihrem Bedarf - und halten Sie es über die Zugriffsrechte 400 (es ist ein Passwort gespeichert, nachdem alle):
Gilt dies nur, wenn Sie mit "localhost" als Wert für die "host". Wenn Sie mehrere lokale Adressen (127.0.0.2, 127.0.0.3), müssen Sie die config-variable "host" auf "localhost" zu verwenden, die konfiguriert Buchse. Ansonsten stellt der client eine Verbindung zum server mittels TCP.
Getestet wurde dies auf meinem Debian 9.5-Server mit MySQL 4.1.22, 5.5.49 und 5.7.19 und Ihren jeweiligen Kunden.