← 返回首页

Docker Compose 部署 MySQL 主从复制

2026-09-15 · 阅读 2,103

本地开发需要模拟主从环境,用 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,实测更稳。