Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Verbindung zum Docker-MySQL-Container von localhost herstellen?

Mit docker-compose up

Seit Sie Port 3306 veröffentlicht haben auf Ihrem Docker-Host , von diesem Host selbst würden Sie sich mit 127.0.0.1:3306 verbinden .

Mit docker-compose run

In diesem Fall der Port-Mapping-Abschnitt der docker-compose.yml Datei wird ignoriert. Damit der Port-Mapping-Abschnitt berücksichtigt wird, müssen Sie den --service-ports Möglichkeit:

docker-compose run --service-ports db

Zusätzlicher Hinweis

Beachten Sie, dass der MySQL-Client standardmäßig versucht, eine Verbindung über einen Unix-Socket herzustellen, wenn Sie ihn anweisen, sich mit localhost zu verbinden . Verwenden Sie also 127.0.0.1 und nicht localhost :

 $ mysql -h 127.0.0.1 -P 3306 -u root

Willkommen beim MySQL-Monitor. Befehle enden mit; oder \g.Ihre MySQL-Verbindungs-ID ist 1Server-Version:5.6.26 MySQL Community Server (GPL)

Copyright (c) 2000, 2015, Oracle und/oder seine verbundenen Unternehmen. Alle Rechte vorbehalten.

Oracle ist eine eingetragene Marke der Oracle Corporation und/oder ihrer verbundenen Unternehmen. Andere Namen können Marken ihrer jeweiligen Eigentümer sein.

Geben Sie „Hilfe“ ein; oder '\h' für Hilfe. Geben Sie '\c' ein, um die aktuelle Eingabeanweisung zu löschen.

mysql>

$ mysql -h localhost -P 3306 -u root

FEHLER 2002 (HY000):Verbindung zum lokalen MySQL-Server über Socket '/var/run/mysqld/mysqld.sock' nicht möglich (2)