mac m1使用docker安装mysql5.7,并且开启binlog

1. 使用 mysql/mysql-server:5.7 镜像

创建一个名为 docker-compose.yml 的文件,内容如下:

yaml 复制代码
version: '3.1'

services:
  mysql:
    image: mysql/mysql-server:5.7
    container_name: mysql57
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: yourpassword
      MYSQL_DATABASE: yourdatabase
      MYSQL_USER: youruser
      MYSQL_PASSWORD: yourpassword
    volumes:
      - mysql_data:/var/lib/mysql
      - ./my.cnf:/etc/mysql/my.cnf

volumes:
  mysql_data:

2. 创建 MySQL 配置文件

在相同的目录下,创建一个名为 my.cnf 的 MySQL 配置文件,用于启用 binlog。这个文件将覆盖容器内的默认 MySQL 配置文件。

ini 复制代码
[mysqld]
server-id=1
log_bin=/var/lib/mysql/mysql-bin.log
binlog_format=row

3. 启动 Docker 容器

在终端中,导航到 docker-compose.yml 文件所在的目录,然后运行以下命令启动 MySQL 容器:

sh 复制代码
docker-compose up -d

这个命令会在后台启动 MySQL 容器,并根据 docker-compose.yml 文件中的配置启用 binlog。

4. 验证 Binlog 是否开启

连接到 MySQL 容器并验证 binlog 是否已正确启用。

sh 复制代码
docker exec -it mysql57 mysql -u root -p

输入你的 MySQL root 用户密码进入 MySQL shell,然后运行以下 SQL 语句以确认 binlog 是否启用:

sql 复制代码
SHOW VARIABLES LIKE 'log_bin';
SHOW VARIABLES LIKE 'binlog_format';
SHOW MASTER STATUS;

5. 示例 Docker Compose 文件目录结构

确保你的目录结构如下:

复制代码
/path/to/your/project
│
├── docker-compose.yml
└── my.cnf

通过上述步骤,你应该可以在 Mac M1 上使用 Docker 成功安装 MySQL 5.7 并启用 binlog。如果你遇到任何问题,请检查 Docker 日志或者容器日志以获取更多信息。

相关推荐
Sheffield1 天前
Docker的跨主机服务与其对应的优缺点
linux·网络协议·docker
Sheffield1 天前
Alpine是什么,为什么是Docker首选?
linux·docker·容器
马艳泽1 天前
win10下运行Start Broker and Proxy报错解决
docker
用户13573999256602 天前
Windows 从 0 搭建 WSL2 原生 AI 开发环境:Codex + Docker + VSCode
docker
vi_h2 天前
在 macOS 上通过 Docker 安装并运行 Ollama(详细可执行教程)
macos·docker·ollama
黑心老魔2 天前
通过 Docker 创建开发环境
docker·开发环境
冬奇Lab3 天前
一天一个开源项目(第41篇):Workout.cool - 现代化开源健身教练平台,训练计划与进度追踪
docker·开源·资讯
天朝八阿哥3 天前
使用Docker+vscode搭建离线的go开发调试环境
后端·docker·visual studio code
阿虎儿4 天前
Docker安装(非sudo用户可用)
docker
fetasty5 天前
rustfs加picgo图床搭建
docker