baidu_36967644
baidu_36967644
采纳率40%
2018-06-25 03:25 阅读 2.0k

Docker的mysql集群节点可以正常创建,但docker无法连接到宿主机的mysql应如何解决?

5

1.创建网段
docker network create --subnet=172.18.0.0/16 net1
2. 创建数据卷
docker volume create --name v1
3. 创建备份数据卷(用于热备份数据)
docker volume create --name backup
4. 创建第1个MySQL节点
docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=abc123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=abc123456 -v v1:/var/lib/mysql -v backup:/data --privileged --name=node1 --net=net1 --ip 172.18.0.2 pxc

使用docker容器连接宿主机我的思路是这样的,创建数据卷和网段,通过端口映射到宿主机的mysql存储文件从而达到docker读取宿主机mysql数据,并做mysql集群的功能,但是现在遇到这样的一个问题,第四步的节点创建成功了但是Navigcat却无法正常连接到宿主机的mysql请问是什么原因呢?我在其他网站上看到,这时候创建mysql节点需要等待两分钟以上,但是我已等待超过2个钟可结果还是连接不成功,想请教一下各位前辈,应该怎么解决这样的问题,我的宿主机mysql外界ip是可以正常允许访问的
图片说明
图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • 已采纳
    baidu_36967644 baidu_36967644 2019-01-11 10:24
    点赞 评论 复制链接分享
  • zhang7046684111 zhang7046684111 2018-06-25 16:12

    用docker-compose

    点赞 评论 复制链接分享
  • du_23tiyanwang du_23tiyanwang 2018-06-27 10:13

    你先检查一遍服务,启动服务:service mysqld start;
    另外,可能遇到的这个问题是防火墙导致的!
    开放防火墙端口:

    添加需要监听的端口

    /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
    

    保存设置

    /etc/init.d/iptables save
    

    查看状态

    /etc/init.d/iptables status
    

    ## 临时关闭防火墙服务
    service iptables stop

    开启防火墙服务

     service iptables start
    

    开机不再启动防火墙服务

      chkconfig iptables off
            这样就恢复了使用。
    
    点赞 评论 复制链接分享
  • jxd815 jxd815 2018-08-27 04:17
    点赞 评论 复制链接分享

相关推荐