在做项目的时候,需要连接vmware上docker容器的数据库,本来可以连接,可能由于后面改了网络配置,导致出现一系列问题,作此文章记录,由于问题已经解决,一些图片不想去复现,在此多用文字叙述

问题描述

问题一

  虚拟机网络配置错误,由于前面修改网络配置,将网络还原为默认配置,导致dhcp分配ip,网关发生改变,导致无法连接.

问题二

  修改网络配置后,由于防火墙和权限等问题导致无法连接。

问题解决

在这里插入图片描述
  打开编辑-虚拟网络编辑器
在这里插入图片描述
在这里插入图片描述
  检查ip段,网关,dhcp起始ip地址,结束ip地址。先记住
  进入存放docker的虚拟机,进入下图路径
在这里插入图片描述
  使用vi或vim打开下图这个文件
在这里插入图片描述
  注意下图红圈这些部分,我这里是设置静态地址,不用dhcp进行动态分配,ipaddr要设置在dhcp起始IP地址结束ip地址之间,getway设置为前面记住的网关
在这里插入图片描述
  配置完成后,使用service network restart进行重置网络配置。
  使用ip addr查看IP地址是否配置成功
在这里插入图片描述
  完成后,在宿主机ping下该地址,如果成功则配置完成,失败在虚拟机ping下外网,看是不是网不好,这里就不赘述,我配置到这就好了。

  配置完成后,我使用navicat连接数据库,发现出现连接失败,修改权限和防火墙后即可。
  使用下图命令进入容器
在这里插入图片描述
  使用下图命令进入mysql
在这里插入图片描述
  使用以下命令修改权限
在这里插入图片描述
  先使用flush privileges,退出到容器命令行,再使用命令service mysql restart重启mysql。使用systemctl stop firewalld关闭防火墙。至此,bug修复。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐