Docker 是一个开源的应用容器引擎,可以让开发者轻松地打包、发布和运行任何应用程序。MySQL 是一个广泛使用的关系型数据库管理系统。
在 Docker 中部署 MySQL 主从复制可以实现数据备份和负载均衡等功能。下面是一些基本步骤:
- 下载 MySQL 镜像
docker pull mysql:8.0
- 创建主从节点容器
# 主节点
docker run -p 3306:3306 --name mysql-master -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0
# 从节点
docker run -p 3307:3306 --name mysql-slave -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0
- 配置主节点
# 进入主节点容器
docker exec -it mysql-master bash
# 登录 MySQL
mysql -uroot -p123456
# 查看当前 binlog 文件及位置
show master status;
# 记录 File 和 Position 的值
- 配置从节点
# 进入从节点容器
docker exec -it mysql-slave bash
# 登录 MySQL
mysql -uroot -p123456
# 停止从库同步
stop slave;
# 设置同步参数
change master to master_host='主节点 IP',master_port=3306,master_user='root',master_password='123456',master_log_file='记录的 File 值',master_log_pos=记录的 Position 值;
# 启动从库同步
start slave;
# 查看同步状态
show slave status\G;
以上就是一个简单的 MySQL 主从复制配置过程。需要注意的是,如果主节点的 binlog 文件发生变化,需要在从节点中重新设置同步参数。