首页 > 解决方案 > 无法使用 SequelPro 连接到 Docker 容器内的 MySQL

问题描述

如何在我的 mac 本地托管的 docker 容器中连接到 MySQL?我正在尝试通过 SequelPro 连接,甚至无法让测试连接正常工作。

这是我的 Docker 命令:

docker run -it --name rodneys_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=password -e MYSQL_DATABASE=demo mysql

我可以通过命令行连接:

docker exec -it rodneys_mysql mysql -uroot -p

我知道如何获取 docker 容器的 ip 地址:

docker inspect <container id> | grep "IPAddress"

但我无法从我的主机通过 SequelPro 连接。

标签: dockersequelpro

解决方案


通过使用127.0.0.1而不是解决localhost,因为localhost这意味着 docker 容器本身。另外不要忘记授予用户连接权限:

grant all privileges on *.* to 'root'@'172.17.0.1' identified by 'password';

或者对于所有主机:

grant all privileges on *.* to 'root'@'%' identified by 'password';

推荐阅读