Docker Compose 部署 MySQL 主从复制
本地开发需要模拟主从环境,用 docker-compose 几分钟就能起一套。
docker-compose.yml
version: "3"
services:
master:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: root123
command: --server-id=1 --log-bin=mysql-bin --binlog-format=ROW
ports: ["3306:3306"]
slave:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: root123
command: --server-id=2 --relay-log=mysql-relay
ports: ["3307:3306"]
注意事项
server-id 不能重复;binlog 格式建议 ROW;生产环境记得开 GTID,实测更稳。