Docker 部署Mysql 高可用集群(PXC)

Mysql集群(PXC)
Percona XtraDB Cluster(简称PXC集群)提供了MySQL高可用的一种实现方法。

PXC特性
同步复制,事务要么在所有节点提交或不提交。
多主复制,可以在任意节点进行写操作。
在从服务器上并行应用事件,真正意义上的并行复制。
节点自动配置,数据一致性,不再是异步复制。
PXC最大的优势:强一致性、无同步延迟

PXC的优点
服务高可用;
数据同步复制(并发复制),几乎无延迟;
多个可同时读写节点,可实现写扩展,不过最好事先进行分库分表,让各个节点分别写不同的表或者库,避免解决数据冲突;
新节点可以自动部署,部署操作简单;
数据严格一致性,尤其适合电商类应用;
完全兼容MySQL;

实现

1、PXC镜像安装--》本身就是mysql镜像的封装

2、网络,专门搭建一个网段来管理mysql集群

3、持久化处理,挂载实现

4、容器创建方式

步骤:

//拉镜像

docker pull percona/percona-xtradb-cluster:5.7.21

//名字太长了 打个标签

docker tag percona/percona-xtradb-cluster:5.7.21 pxc

//查看宿主机的network

docker network ls

//创建一个mysql专用的网段

docker network create --subnet=172.20.0.0/24 pxc-net

//查看当前数据卷

docker volume ls

//创建3个数据卷

docker volume create --name v1

docker volume create --name v2

docker volume create --name v3

//查看数据卷信息

docker volume inspect v1

 宿主机的挂在地址

//启动命令 创建三个容器

docker run -d -p 3311:3306 -v v1:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=123456 --privileged --name=mysql_node1 --net=pxc-net --ip 172.20.0.2 pxc

docker run -d -p 3312:3306 -v v2:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=123456 -e CLUSTER_JOIN=mysql_node1 --privileged --name=mysql_node2 --net=pxc-net --ip 172.20.0.3 pxc

docker run -d -p 3313:3306 -v v3:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=123456 -e CLUSTER_JOIN=mysql_node1 --privileged --name=mysql_node3 --net=pxc-net --ip 172.20.0.4 pxc

部署完成

 参考:docker搭建mysql(集群+高可用+热备份)_南美鼠的博客-CSDN博客_docker mysql 高可用

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值