sql >> Base de Datos >  >> RDS >> Mysql

¿Conectarse al contenedor Docker MySQL desde localhost?

Usando docker-compose up

Desde que publicaste el puerto 3306 en su host docker , desde ese mismo host te conectarías a 127.0.0.1:3306 .

Usando docker-compose run

En ese caso, la sección de mapeo de puertos de docker-compose.yml el archivo es ignorado. Para tener en cuenta la sección de asignación de puertos, debe agregar el --service-ports opción:

docker-compose run --service-ports db

Nota adicional

Tenga en cuenta que, de forma predeterminada, el cliente mysql intenta conectarse mediante un socket de Unix cuando le dice que se conecte a localhost . Así que usa 127.0.0.1 y no localhost :

 $ mysql -h 127.0.0.1 -P 3306 -u root

Bienvenido al monitor de MySQL. Los comandos terminan en; o \g.Su identificación de conexión MySQL es 1Versión del servidor:5.6.26 MySQL Community Server (GPL)

Copyright (c) 2000, 2015, Oracle y/o sus filiales. Todos los derechos reservados.

Oracle es una marca registrada de Oracle Corporation y/o sus afiliados. Otros nombres pueden ser marcas comerciales de sus respectivos propietarios.

Escriba 'ayuda;' o '\h' para obtener ayuda. Escriba '\c' para borrar la declaración de entrada actual.

mysql>

$ mysql -h localhost -P 3306 -u root

ERROR 2002 (HY000):No se puede conectar al servidor MySQL local a través del socket '/var/run/mysqld/mysqld.sock' (2)