
在使用docker安装mysql并运行镜像后,虽然容器内提示已准备好连接并显示端口号为3306,但本地使用命令行尝试连接时却显示错误。这背后的原因是什么?
答案在于映射端口。docker容器运行时,它们与宿主机具有隔离的网络空间。因此,容器内的3306端口并不直接映射到宿主机。而是会根据宿主机和容器的网络配置,动态分配一个端口。
在大多数情况下,docker会自动分配一个端口,该端口通过命令 docker ps 可查询。在这个例子中,映射端口应该是33060。
家电公司网站源码是一个以米拓为核心进行开发的家电商城网站模板,程序采用metinfo5.3.9 UTF8进行编码,软件包含完整栏目与数据。安装方法:解压上传到空间,访问域名进行安装,安装好后,到后台-安全与效率-数据备份还原,恢复好数据后到设置-基本信息和外观-电脑把网站名称什么的改为自己的即可。默认后台账号:admin 密码:132456注意:如本地测试中127.0.0.1无法正常使用,请换成l
因此,要从本地连接到docker中的mysql,需要指定映射端口:
mysql -P 33060 -u root -p
另外,还需要修改容器内mysql用户的权限,以允许远程连接。最简单的办法是把用户的主机名设置为 %,允许来自任何主机的连接。









