我无法连接到在本地环境(Mac OS X)中使用Docker创建的Mysql。
我创建了以下配置文件。
version: '2'
services:
db:
image: mysql:5.7
environment:
MYSQL_DATABASE: mysqldatabase
MYSQL_USER: mysql
MYSQL_PASSWORD: mysql
MYSQL_ROOT_PASSWORD: password
ports:
- "33333:3306"
container_name: mysql-db
volumes:
- db-data:/var/lib/mysql
volumes:
db-data:
driver: local
然后,我使用以下命令启动了mysql的docker容器。
$ docker-compose up -d
$ docker start mysql-db
到目前为止,没有问题,但尝试连接到mysql时发生错误。
$ mysql -p 33333 -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
请告诉我如何处理它。
答案 0 :(得分:3)
试试mysql -h 0.0.0.0 -P 33333 -u root -p
。
此处的注释端口为大写字母P,密码为小写字母p。
希望这有帮助!
答案 1 :(得分:0)
我想如果你从主机连接到容器。 mysql将看到来自非本地主机的连接,因此请断开连接。您可以更改mysql配置以允许其他主机,或使用docker exec -it mysql ...