Docker搭建MySQL的PXC方案集群

搭建5个MySQL节点

  1. 拉取镜像到本地
docker pull percona/percona‐xtradb‐cluster
  1. 镜像名称太长不方便使用,进行一下改名,改名后删除原来的镜像
docker tag percona/percona‐xtradb‐cluster pxc
docker rmi percona/percona‐xtradb‐cluster
  1. 创建内网网段net1
创建网段:docker network create --subnet=172.18.0.0/24 net1
查询网段信息: docker inspect net1
删除网段:docker network rm net1
  1. 创建docker数据卷
创建:docker volume create --name v1
查看数据卷信息:docker inspect v1
删除:docker volume rm v1

 重复操作创建v1-v5共5个数据卷
 
创建备份数据卷:docker volume create --name backup
  1. 创建容器
    • node1启动后一段时间再启动其他节点没如果node1没初始化完成就启动其他节点就会报错
    • node如果启动几秒就挂掉了,删除对应的数据卷之后再重新创建数据卷再启动
    • 参数说明:
      • -d 后台运行
      • -p 3307:3306 将容器内的3306端口映射到宿主机3307端口
      • -e 初始化MySQL的基本参数
      • -v 映射宿主机数据卷和容器目录
      • –name 指定容器名
      • –net 指定容器的网关
      • –ip 指定容器的IP,如果不指定会自动生成
#创建第1个MySQL节点
docker run -d -p 3306: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
#创建第2个MySQL节点
docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=abc123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=abc123456 -e CLUSTER_JOIN=node1 -v v2:/var/lib/mysql -v backup:/data --privileged --name=node2 --net=net1 --ip 172.18.0.3 pxc
#创建第3个MySQL节点
docker run -d -p 3308:3306 -e MYSQL_ROOT_PASSWORD=abc123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=abc123456 -e CLUSTER_JOIN=node1 -v v3:/var/lib/mysql --privileged --name=node3 --net=net1 --ip 172.18.0.4 pxc
#创建第4个MySQL节点
docker run -d -p 3309:3306 -e MYSQL_ROOT_PASSWORD=abc123456 -e CLUSTER_NAME
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值