背景
【注意】: 鄙人认为本篇适合做入门测试/学习之用,选择的 "单机多节点配置",后面再整理 "多机配置"文章.
近期正突击学习数据库知识
想着对 PXC 集群部署实际操作一番,提高技能点,为后续的升职加薪做充足的准备
于是,在此记录一下,
既能作为采坑笔记,又能帮助到后期有需要的道友,欢迎指摘 …
【注】:Percona XtraDB Cluster(简称 PXC 集群)
PXC的优缺点
PXC 最大的优势:强一致性、无同步延迟, 推荐阅读: 【Docker 部署 Mysql集群】
MySQL 常见集群方案 【Replication vs PXC】
环境
CentOS版本: CentOS Linux release 7.9.2009 (Core)
MySQL 版本: 5.7.32
PXC 版本 : percona/percona-xtradb-cluster:5.7
其实,一开始,鄙人也是计划直接操作多机部署经验,基本百度出来的都是这一类的,只好先摸索一番吧 …
前期准备
1). 开启四个 PXC 环境所涉及的端口:
3306:# mysql 实例端口
4567:# PXC cluster 相互通讯的端口
4444:# 用于 SST(State Snapshot Transfer): 全量传输
4568:# 用于 IST(Incremental state Transfer):增量传输传送
以鄙人使用宝塔面板操作为例,注意以上端口的开启:
2). 部署前建议关闭 SELINUX、将 MySQL 数据库服务停止
安全增强型 Linux(Security-Enhanced Linux)SELinux 主要由美国国家安全局开发
一种方法【荐】,永久关闭 Selinux:
"vi /etc/selinux/config" 把 "SELINUX" 属性值设置成 disabled,然后 reboot 重启
另一种方法,或者执行命令 Linux 临时关闭 Selinux: "setenforce 0"
3). 安装 "docker"
因为,PXC 官方提供了 Docker 镜像,所以我们可以很方便的搭建 PXC 集群
所以,如果没有安装 "docker",需要先执行命令: yum install docker
搭建 PXC 集群
1). 下载 PXC 镜像 (可以指定版本)
Docker 仓库中的 PXC 官方镜像:https://hub.docker.com/r/percona/percona-xtradb-cluster
因为我所使用的 MySQL 版本为 5.7.32,此处对应选择的 PXC 版本就是 5.7
docker pull percona/percona-xtradb-cluster:5.7
[root@localhost download]# docker pull percona/percona-xtradb-cluster:5.7
Trying to pull repository docker.io/percona/percona-xtradb-cluster ...
5.7: Pulling from docker.io/percona/percona-xtradb-cluster
75f829a71a1c: Already exists
cf0efe55f10d: Already exists
e632c0c