docker mysql主从复制
时间: 2023-10-27 09:06:36 浏览: 63
要在Docker中设置MySQL主从复制,您可以按照以下步骤进行操作:
1. 首先,创建一个Docker容器来运行主数据库。假设您已经安装了Docker并具有基本的Docker知识。在命令行中运行以下命令:
```
docker run --name mysql-master -e MYSQL_ROOT_PASSWORD=your_password -p 3306:3306 -d mysql
```
请将"your_password"替换为您所需的实际密码。
2. 确保主数据库容器正在运行。您可以运行以下命令来检查容器状态:
```
docker ps
```
3. 创建一个Docker容器来运行从数据库。在命令行中运行以下命令:
```
docker run --name mysql-slave -e MYSQL_ROOT_PASSWORD=your_password -p 3307:3306 -d mysql
```
请注意,这里我们使用的是不同的端口来避免与主数据库冲突。同样,将"your_password"替换为您所需的实际密码。
4. 确保从数据库容器正在运行。
5. 进入主数据库容器。运行以下命令:
```
docker exec -it mysql-master bash
```
6. 在主数据库容器中,编辑MySQL配置文件以启用二进制日志。运行以下命令:
```
vi /etc/mysql/my.cnf
```
将以下行添加到文件的末尾:
```
[mysqld]
log-bin=mysql-bin
server-id=1
```
保存并退出文件。
7. 重新启动主数据库容器,使更改生效。运行以下命令:
```
service mysql restart
```
8. 进入从数据库容器。运行以下命令:
```
docker exec -it mysql-slave bash
```
9. 在从数据库容器中,编辑MySQL配置文件以启用主从复制。运行以下命令:
```
vi /etc/mysql/my.cnf
```
将以下行添加到文件的末尾:
```
[mysqld]
server-id=2
replicate-do-db=my_database
```
这里的"my_database"是您要复制的数据库名称。如果您只想复制特定数据库,请将其替换为您的数据库名称。
保存并退出文件。
10. 重新启动从数据库容器,使更改生效。运行以下命令:
```
service mysql restart
```
11. 在主数据库容器中,创建一个新用户并授予复制权限。运行以下命令:
```
mysql -u root -p -e "CREATE USER 'replication_user'@'%' IDENTIFIED BY 'your_password';"
mysql -u root -p -e "GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%';"
mysql -u root -p -e "FL
相关推荐
![gz](https://img-home.csdnimg.cn/images/20210720083447.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)