Docker —— MySQL主从复制集群

架构图

+-------------------+ +--------------------+ +--------------------+

| | | | | |

| MySQL Master |--------------------------| MySQL Slave 1 |--------------------------| MySQL Slave 2 |

| IP: 172.18.0.10 | | IP: 172.18.0.11 | | IP: 172.18.0.12 |

| Port: 3306 | | Port: 3306 | | Port: 3306 |

| Data Dir: /data/mysql/master | Data Dir: /data/mysql/slave1 | Data Dir: /data/mysql/slave2 |

+-------------------+ +--------------------+ +--------------------+

配置文件复制

启动临时 MySQL 容器用于提取配置文件

我们先启动一个临时的 MySQL 容器,用于从中拷贝默认配置文件:

复制代码
docker run -d --name mysql-temp mysql:8.0

等待几秒后,执行以下命令将配置文件复制到本地:

复制代码
mkdir -p /data/mysql/conf
​
docker cp mysql-temp:/etc/my.cnf /data/mysql/conf/my.cnf

停止并删除临时容器:

复制代码
docker stop mysql-temp && docker rm mysql-temp

创建主从节点的目录结构

复制代码
mkdir -p /data/mysql/{master,slave1,slave2}/{conf,data}

将配置文件分别复制到对应的目录中:

复制代码
cp /data/mysql/conf/my.cnf /data/mysql/master/conf/
cp /data/mysql/conf/my.cnf  /data/mysql/slave1/conf/
cp /data/mysql/conf/my.cnf  /data/mysql/slave2/conf/
相关推荐
David爱编程12 分钟前
网络策略NetworkPolicy与RBAC授权机制: Kubernetes安全体系的双重防线
云原生·容器·kubernetes
飞翔的佩奇3 小时前
基于SpringBoot+MyBatis+MySQL+VUE实现的房屋交易平台管理系统(附源码+数据库+毕业论文+部署教程+配套软件)
数据库·spring boot·mysql·vue·毕业设计·mybatis·房屋交易平台
wb1899 小时前
服务器的Mysql 集群技术
linux·运维·服务器·数据库·笔记·mysql·云计算
鲨鱼辣椒_TUT9 小时前
MySQL连接算法和小表驱动大表的原理
mysql·算法·adb
天上掉下来个程小白10 小时前
Docker-07.Docker基础-数据卷挂载
运维·docker·微服务·容器
迷失蒲公英10 小时前
Docker容器中文PDF生成解决方案
docker·容器·pdf
9命怪猫10 小时前
K8S服务发现原理及开发框架的配合
云原生·容器·kubernetes·服务发现
寒士obj11 小时前
MySQL偏门但基础的面试题集锦
数据库·mysql
唐叔在学习11 小时前
9类主流数据库 - 帮你更好地进行数据库选型!
数据库·redis·mysql·mongodb·nosql·大数据存储
David爱编程11 小时前
理解Service的kube-proxy 实现原理
云原生·容器·kubernetes