Heim >Datenbank >MySQL-Tutorial >Was ist mysql.sock?

Was ist mysql.sock?

青灯夜游
青灯夜游Original
2022-06-27 11:40:076439Durchsuche

„mysql.sock“ ist die Socket-Datei von MySQL. Wenn sich der MySQL-Host und der MySQL-Client auf demselben Host befinden, wird der Unix-Socket als Träger des Kommunikationsprotokolls verwendet. Es gibt zwei Möglichkeiten, eine lokale Verbindung zu MySQL unter UNIX-Seriensystemen herzustellen: Die UNIX-Domänen-Socket-Methode erfordert eine Socket-Datei, die mit dem Befehl „show variables like ‚socket‘G;“ angezeigt werden kann Speicherort der lokalen Socket-Datei.

Was ist mysql.sock?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, MySQL8-Version, Dell G3-Computer.

„mysql.sock“ ist die Socket-Datei von MySQL.

Um eine lokale Verbindung zu MySQL unter einem UNIX-System herzustellen, können Sie die UNIX-Domänen-Socket-Methode verwenden.

Die Socket-Datei kann zum Anzeigen verwendet werden Der Speicherort der Datei:

show variables like 'socket'\G;

Was ist mysql.sock?

mysql.sock ist, wenn sich der MySQL-Host und der MySQL-Client auf demselben Host befinden und den Unix-Domain-Socket als Träger des Kommunikationsprotokolls verwenden, das schneller als TCP ist.

MySQL verfügt über zwei Hauptverbindungsmethoden:

(1) TCP/IP

(2) Socket

Die am häufigsten verwendete Verbindung ist TCP:

[root@mysql8 data]# mysql -h 192.168.103.67 -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 14
Server version: 8.0.15 MySQL Community Server - GPL

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

Die andere Möglichkeit ist diese Unix-Socket-Verbindung. Es ist schneller als die Verwendung von TCP, ist jedoch nur auf MySQL und die Anwendung auf demselben PC anwendbar und basiert auf der lokalen .sock-Datei. Wenn sie sich nicht auf demselben PC befinden, besteht keine Möglichkeit, eine Verbindung herzustellen.

Für mysql.sock besteht die Funktion darin, dass sich das Programm und der MySQL-Server auf demselben Computer befinden und beim Initiieren einer lokalen Verbindung verfügbar sind.

Zum Beispiel müssen Sie nicht die spezifische IP definieren, um eine Verbindung zum Host herzustellen, solange diese leer oder localhost ist.

In diesem Fall ist es auch dann möglich, eine normale Verbindung herzustellen, wenn Sie den externen Port von MySQLl ändern.

Denn nachdem Sie den Port in my.ini oder my.cnf geändert haben, wird bei jedem Start von MySQL Server mysql.sock generiert. Es wurde einmal neu generiert, als Sie MySQL nach der Änderung von my.cnf neu gestartet haben, und die Informationen wurden entsprechend geändert.

Bei externen Verbindungen müssen Sie also den Port ändern, bevor Sie eine Verbindung herstellen können.

Bei der Installation einer MySQL-Verbindung unter Linux erhalte ich häufig die Meldung, dass die Datei mysql.sock nicht gefunden werden kann. Die Lösung ist einfach:

Wenn es sich um ein neu installiertes MySQL handelt und die Meldung angezeigt wird, dass die Datei nicht gefunden werden kann, Suchen Sie danach und geben Sie den richtigen Speicherort an.

Wenn die Datei mysql.sock versehentlich gelöscht wird, müssen Sie den MySQL-Dienst neu starten. Wenn der Neustart erfolgreich ist, wird mysql.sock im Verzeichnis datadir generiert und Sie können es zu diesem Zeitpunkt angeben.

Wenn das immer noch nicht funktioniert, wählen Sie einfach die Verbindung über eine TCP-Verbindung. Tatsächlich wird die Pipe-Verbindung auch unter Windows unterstützt.

【Verwandte Empfehlung: MySQL-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist mysql.sock?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Wozu dient der MySQL-Cursor?Nächster Artikel:Wozu dient der MySQL-Cursor?