Mysql搭建主从同步,docker方式(一主一从)
以下是使用Docker搭建MySQL主从同步的基本步骤和示例配置:
- 拉取MySQL镜像:
docker pull mysql:5.7
- 启动主MySQL服务器:
docker run --name mysql-master -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:5.7
- 进入主MySQL服务器容器并创建复制用户:
docker exec -it mysql-master bash
mysql -u root -p
GRANT REPLICATION SLAVE ON *.* TO 'replica'@'%' IDENTIFIED BY 'replica-pw';
FLUSH PRIVILEGES;
- 获取主MySQL服务器状态,记录下
File
和Position
:
SHOW MASTER STATUS;
- 启动从MySQL服务器,并配置复制:
docker run --name mysql-slave -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:5.7
docker exec -it mysql-slave bash
mysql -u root -p
CHANGE MASTER TO
MASTER_HOST='<主MySQL服务器IP或DNS>',
MASTER_USER='replica',
MASTER_PASSWORD='replica-pw',
MASTER_LOG_FILE='<记录的File>',
MASTER_LOG_POS=<记录的Position>;
START SLAVE;
- 验证复制是否正常工作:
SHOW SLAVE STATUS\G
确保替换<主MySQL服务器IP或DNS>
, <记录的File>
, 和<记录的Position>
为实际的信息。
注意:在生产环境中,请使用更安全的方式配置复制凭据,并确保容器和数据库的配置符合最佳实践,包括网络安全和资源限制等。
评论已关闭