Docker 安装 MySQL 后,本地无法连接,是什么原因?
docker安装mysql,为何无法通过本地连接?
在使用docker安装mysql并运行镜像后,虽然容器内提示已准备好连接并显示端口号为3306,但本地使用命令行尝试连接时却显示错误。这背后的原因是什么?
答案在于映射端口。docker容器运行时,它们与宿主机具有隔离的网络空间。因此,容器内的3306端口并不直接映射到宿主机。而是会根据宿主机和容器的网络配置,动态分配一个端口。
在大多数情况下,docker会自动分配一个端口,该端口通过命令 docker ps 可查询。在这个例子中,映射端口应该是33060。
因此,要从本地连接到docker中的mysql,需要指定映射端口:
mysql -P 33060 -u root -p
另外,还需要修改容器内mysql用户的权限,以允许远程连接。最简单的办法是把用户的主机名设置为 %,允许来自任何主机的连接。
以上就是Docker 安装 MySQL 后,本地无法连接,是什么原因?的详细内容,更多请关注其它相关文章!