概念
别问,问就是百度。
Docker下载与安装
官网下载:https://www.docker.com/
此处留坑:Mac版Docker,禁用不了开机启动。等一个大佬帮忙解决
添加远程仓库(国外的镜像下载速度太慢)
我用的:https://www.daocloud.io/
Mac添加方法:
创建Mysql集群
0.选择Mysql集群
一般集群方案:PXC、Replication
我们采用PXC的Mysql集群镜像,不懂先百度PXC。
1.查询远程镜像仓库
docker search percona
2.下载远程镜像到本地
docker pull docker.io/percona/percona-xtradb-cluster
别问为什么拉这个镜像,问就是不说
3.查看本地镜像
docker images
4.重命令镜像【可选】【之后以重命名镜像进行操作】
docker tag percona/percona-xtradb-cluster pxc
5.删除镜像【把名字长的删掉,留下重命名的镜像】
docker rmi percona/percona-xtradb-cluster
删完后查看镜像:
6.创建docker内网段
docker network create --subnet=172.18.0.0/24 net1
7.查看net1的详细信息
docker inspect net1
8.创建映射数据卷
docker volume create v1
docker volume create v2
docker volume create v3
9.查看数据卷的详细信息
docker inspect v1
10.运行主节点node1的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 --privileged --name=node1 --net=net1 --ip 172.18.0.2 pxc
11.启动运行从节点node2的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 --privileged --name=node2 --net=net1 --ip 172.18.0.3 pxc
12.启动运行从节点node3的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
13.查看所有容器【包括已停止容器】
docker container ls -a
或
docker ps -a
14.查看Mysql集群效果
我使用Navicat客户端呢。
新建Mysql连接
创建三个Mysql连接(上面创建了3个)
在node1创建一个数据库test,看其他表的情况
到此为止!