在CentOS 7 64位 Docker容器里面部署mysql数据库主从复制

MySQL主从复制是一种常见的数据库架构设计,它允许将一个MySQL数据库的更改同步到一个或多个从服务器(slave),以提供数据备份、读取负载均衡以及灾难恢复等功能。以下是在CentOS 7 64位的Docker环境中设置MySQL主从复制的基本步骤:

1、准备两个MySQL容器

在Docker中运行两个MySQL容器,一个作为主服务器(Master),另一个作为从服务器(Slave)。
# 启动Master容器
docker run --name mysql-master -e MYSQL_ROOT_PASSWORD=password -d mysql:5.7

# 启动Slave容器
docker run --name mysql-slave -e MYSQL_ROOT_PASSWORD=password -d mysql:5.7
确保替换 password 为你所需的MySQL root用户密码。

2、配置Master服务器

进入Master容器并进行配置:

docker exec -it mysql-master bash
修改MySQL配置文件 my.cnf,允许网络连接和二进制日志记录:

[mysqld]
server-id = 1
log_bin = /var/lib/mysql/mysql-bin.log
bind-address = 0.0.0.0
重启MySQL服务使配置生效:
service mysql restart
创建用于复制的用户

3、在Master容器中创建一个用于复制的用户并授权:

mysql -uroot -ppassword

CREATE USER 'replicator'@'%' IDENTIFIED BY 'replicator_password';
GRANT REPLICATION SLAVE ON *.* TO 'replicator'@'%';
FLUSH PRIVILEGES;
这里将用户名、密码和权限替换为实际的值。

4、获取Master服务器状态

在Master容器中获取当前的二进制日志文件名和位置:

SHOW MASTER STATUS;
记录下 File 和 Position 的值,后续在配置Slave服务器时会用到。

5、配置Slave服务器

进入Slave容器并进行配置:

docker exec -it mysql-slave bash
修改MySQL配置文件 my.cnf,配置服务器ID和启用复制:

[mysqld]
server-id = 2
重启MySQL服务:

service mysql restart
设置Slave服务器连接Master

6、在Slave容器中配置连接Master的信息,使用Master服务器的二进制日志文件和位置:

mysql -uroot -ppassword

CHANGE MASTER TO
  MASTER_HOST='master_ip',
  MASTER_USER='replicator',
  MASTER_PASSWORD='replicator_password',
  MASTER_LOG_FILE='mysql-bin.xxxxxx',  -- 替换为Master的日志文件名
  MASTER_LOG_POS=xxxxx;                 -- 替换为Master的日志位置

START SLAVE;
将 master_ip 替换为你Master容器的IP地址,replicator、replicator_password、mysql-bin.xxxxxx 和 xxxxx 替换为Master服务器的相应值。

7、在Slave容器中查看复制状态,确保没有错误:

SHOW SLAVE STATUS\G;
检查 Slave_IO_Running 和 Slave_SQL_Running 是否都为 Yes,表明复制已经成功启动。

8、注意事项
确保Master和Slave容器之间可以互相访问,如果使用Docker默认的网络配置,可以通过容器名来访问。
在生产环境中,建议使用更复杂的安全措施,例如使用SSL/TLS加密复制流量。
定期备份和监控复制进程,确保数据的完整性和可用性。
通过上述步骤,你就可以在CentOS 7 64位的Docker环境中成功设置MySQL主从复制。

  • 10
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GHY我与春风皆过客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值