Warum verbindet sich mySQL an allen / allen Ports?

8

Ich betreibe Linux Mint und versuche auf diese Weise eine Verbindung zu mySQL herzustellen

%Vor%

Dann fragt es mich nach meinem Passwort. Das ist alles in Ordnung. Warum ist es so, dass, wenn ich so etwas eintippe, es immer noch funktioniert ....

%Vor%

Sollte das nicht fehlschlagen, da auf Port 1234 kein MySQL-Server läuft?

Der Grund dafür ist, dass ich einen SSH-Tunnel erstellen möchte, um eine Verbindung zu einer Datenbank auf einem anderen Server herzustellen. Angenommen, der SSH-Tunnel leitet all meinen Datenverkehr von localhost: 3308 an myremoteserver: 3306 weiter. Da mein lokaler mySQL-Server meine Verbindungen an allen Ports akzeptiert, kann ich keine Verbindung zum Port 3308 herstellen und den Remote-Server nicht erreichen. Ich treffe immer noch meinen lokalen Server ....

Auch wenn meine SSH-Tunneloptionen falsch waren, habe ich mich gefragt, ob jemand wüsste, warum ich eine Verbindung zu Port 1234 herstellen kann und es immer noch meinen lokalen mySQL-Server unter 3306 erreicht?

    
Girish Dusane 09.12.2010, 07:33
quelle

4 Antworten

10

IIRC mysql verbindet Sie mit einem Unix-Socket, wenn Sie sich mit localhost verbinden. Da es in diesem Fall keine Verbindung über TCP gibt, ist kein Port beteiligt und die von Ihnen angegebene Portnummer spielt keine Rolle.

Edit: Nicht sicher, ob das auf allen Systemen zutrifft, aber wenn ich 127.0.0.1 oder den Hostnamen anstelle von localhost verwende, verbindet sich mysql über TCP und die Portnummer spielt eine Rolle - ich kann nur mit der richtigen Portnummer verbinden.

    
titanoboa 09.12.2010, 08:59
quelle
11

Um eine TCP-Verbindung zu erzwingen, verwenden Sie --protocol=TCP .

Beispiel:

Zuerst der SSH-Tunnel

%Vor%

und verbinden Sie sich dann mit dem entfernten mysql-Server mit

%Vor%     
P0P3Y 27.09.2012 16:23
quelle
1

Sie werden nach Ihrem Passwort gefragt bevor es versucht sich zu verbinden. Wenn Sie Ihr Passwort (oder etwas anderes) eingeben und es fortfahren lassen, antwortet es mit etwas wie:

%Vor%     
Lee 09.12.2010 07:51
quelle
1

@titanoboa, danke dafür! Ich hatte das gleiche Problem. Nur um hinzuzufügen, können Sie tatsächlich TCP-Verbindung sogar für localhost mit dem folgenden

erzwingen %Vor%

Prost

    
nolazybits 23.06.2014 05:18
quelle

Tags und Links