docker部署mysql5.7一主一从
时间: 2025-01-05 20:45:23 浏览: 8
Docker部署MySQL 5.7的一主一从集群通常涉及到两个步骤:创建主节点容器和创建从节点容器,并通过网络连接它们。
1. **创建主节点**:
- 首先,下载官方的MySQL Docker镜像:`docker pull mysql:5.7`
- 使用`docker run`命令启动主节点,指定环境变量如`MYSQL_ROOT_PASSWORD`设置密码,同时添加 `-e MYSQL_DATABASE=your_database` 设置初始数据库名:
```
docker run -d --name master_mysql -p 3306:3306 --network your_network -e MYSQL_ROOT_PASSWORD=your_password -e MYSQL_DATABASE=your_database mysql:5.7
```
- 确保运行的容器作为master,可以配置`innodb_cluster`设置,但注意这不是官方支持的方式。
2. **创建从节点**:
- 启动一个新的容器,使用相同的网络,连接到主节点:
```
docker run -d --name slave_mysql -e MYSQL_MASTER_HOST=master_mysql -e MYSQL_SLAVE_USER=slave_user -e MYSQL_SLAVE_PASSWORD=slave_password --network your_network mysql:5.7
```
- 这里假设你设置了`slave_user`和`slave_password`,用于从节点连接到主节点。
3. **数据同步**:
- 主节点(master_mysql)自动将更改同步给从节点。但从节点需要定期刷新或手动触发复制操作。
4. **监控和管理**:
- 可以使用`docker exec`进入容器,或者外部工具(如`docker-compose`或`fig`)来管理和维护数据库。
阅读全文