从Intellij'连接到MySql Docker容器;s数据库工具
我创建了一个docker MySQL容器,如下所示从Intellij'连接到MySql Docker容器;s数据库工具,mysql,docker,intellij-idea,Mysql,Docker,Intellij Idea,我创建了一个docker MySQL容器,如下所示 docker run--detach--name internal mysql-p 6604:3306-e mysql\u ROOT\u PASSWORD=user\u pass-e mysql\u DATABASE=internal-e mysql\u user=user-e mysql\u PASSWORD=user\u pass mysql 集装箱运转良好 CONTAINER ID IMAGE命令创建状态端口名称e802cd30e6a2
docker run--detach--name internal mysql-p 6604:3306-e mysql\u ROOT\u PASSWORD=user\u pass-e mysql\u DATABASE=internal-e mysql\u user=user-e mysql\u PASSWORD=user\u pass mysql
集装箱运转良好
CONTAINER ID IMAGE命令创建状态端口名称e802cd30e6a2 mysql“docker entrypoint.s…”42秒前上升41秒33060/tcp,0.0.0.0:6604->3306/tcp内部mysql
在容器中,我检查了用户主机,它看起来很好,不是吗
+------------------+-----------+
| user | host |
+------------------+-----------+
| root | % |
| user | % |
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+------------------+-----------+
但当我试图从IntelliJ或我的Spring Boot应用程序连接到数据库时,我总是收到相同的错误
当然,我试着用谷歌搜索,发现在某些情况下,它通过docker-inspect-f“{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}”内部mysql帮助计算出容器ip
结果是172.17.0.2
我已尝试通过jdbc进行连接:mysql://172.17.0.2:3306/internal-mysql
我用JDBCMySQL驱动程序8.0.21和5.1进行了尝试,但都没有成功
有什么想法吗?既然您在主机的端口
6604
上发布了mysql容器的3306
端口,那么在尝试从主机连接到mysql docker容器时,您应该使用6604
端口。您将6604
端口发布到主机,因此从intellij连接到它。请将此作为答案发布你得到分数;)