环境准备
Docker:19.03.4
Mysql:8.0.18
一主一从
master:10.0.60.8:3307
slave:10.0.60.8:3308
配置
1.进入mysql容器
docker exec -it mysql bash
2.编辑mysql配置文件
vim /etc/mysql/my.cnf
3.主从数据库配置文件添加如下配置
#开启binlog功能
log-bin=mysql-bin
#服务器id 唯一
server-id=1
#不参与主从的数据库名
binlog-ignore-db=mysql
#需要进行 binlog 日志记录的数据库
binlog-do-db=db_1
主从配置除server-id 其他配置都一样
4.重启容器
docker restart mysql
5.连接主库
查看主库状态
show master status;

6.连接从库
执行命令
change master to master_host=‘10.0.60.8’, master_port=3307, master_user=‘root’, master_password=‘123456’, master_log_file=‘mysql-bin.000001’, master_log_pos=155;
master_host、master_ip、master_user、master_password:主节点ip、端口、账号、密码
master_log_file:File (主节点文件名称,见上个步骤)
master_log_pos:Position(主节点文件位置,见上个步骤)
7.启动主从同步
start slave;
8.查看主从状态
show slave status \G

本文详细介绍了如何在Docker环境下设置MySQL的主从复制。通过配置log-bin、server-id等参数,实现了一主一从的数据库设置。在主库与从库之间,通过指定主机IP、端口、用户名、密码以及binlog文件和位置进行连接,并启动主从同步。最后,检查主从状态确保复制成功。
3185





