Mysql主从模式
本案例 使用docker建立主从数据库
安装
这里我使用的是自己的服务器unraid里docker管理工具有mysql模版 我直接使用模版创建了


使用命令
# 拉取镜像并运行 |
修改配置
为了以后更容易的修改配置我把配置文件映射到了虚拟机上
# 查看运行中的容器 |

# 进入容器 |

重新运行容器
编辑修改docker容器


docker命令
docker run -d --name='mysql-master' --net='bridge' -e TZ="Asia/Shanghai" -e HOST_OS="Unraid" -e 'MYSQL_ROOT_PASSWORD'='1q2w3e1122!' -e 'MYSQL_DATABASE'='m_test' -e 'MYSQL_USER'='m_test' -e 'MYSQL_PASSWORD'='m_test' -p '3307:3306/tcp' -v '/mnt/user/appdata/mysql-master':'/var/lib/mysql':'rw' -v '/mnt/user/appdata/mysql-master/conf/mysql/':'/etc/mysql':'rw' 'mysql' |
修改配置

[mysqld] |
master节点设置
# 进入节点 docker ps 查看id |

查看日志位置
SHOW MASTER STATUS; |

记住以下2个 |
slave节点设置

slave命令
docker run -d --name='mysql-slave' --net='bridge' -e TZ="Asia/Shanghai" -e HOST_OS="Unraid" -e 'MYSQL_ROOT_PASSWORD'='1q2w3e1122!' -e 'MYSQL_DATABASE'='m_test' -e 'MYSQL_USER'='m_test' -e 'MYSQL_PASSWORD'='m_test' -p '3308:3306/tcp' -v '/mnt/user/appdata/mysql-slave':'/var/lib/mysql':'rw' -v '/mnt/user/appdata/mysql-slave/conf/mysql/':'/etc/mysql':'rw' 'mysql' |
mysqld设置
server-id=2 #设置server-id |
CHANGE MASTER TO MASTER_HOST='10.10.10.228', MASTER_USER='m_test', MASTER_PASSWORD='m_test', MASTER_LOG_FILE='mysql-bin.000001',MASTER_PORT=3307, MASTER_LOG_POS=2348; |

启动从节点
start slave; |


