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 日志或者容器日志以获取更多信息。

相关推荐
爱学习的程序媛14 小时前
Docker 完全指南:从入门到生产级实践
运维·docker·容器
分布式存储与RustFS14 小时前
Windows原生版RustFS:无需Docker,1分钟本地对象存储环境搭建
windows·docker·容器·对象存储·minio·企业存储·rustfs
问道飞鱼14 小时前
【分布式技术】RustFS 非 Docker 部署完整指南:从单机到生产集群
分布式·docker·容器·rustfs
csdn_aspnet16 小时前
用Anaconda驯服AI开发流,从数据预处理到模型部署,全链路环境标准化实战
人工智能·docker·ai·conda·anaconda
m0_6948455716 小时前
RevelGo搭建教程:类Rails开发体验的Go Web框架
服务器·开发语言·后端·docker·golang·开源·github
returnthem16 小时前
Docker 整体架构(C/S 模式)
docker·容器·架构
爱学习的程序媛17 小时前
Docker常用指令速查手册
运维·docker·容器
在荒野的梦想17 小时前
Docker + K8s 部署若依微服务 | 从 0 到 1 实战指南(Dockerfile + Harbor + Helm)
docker·微服务·kubernetes
Y3ai1 天前
Windows 11 Docker Desktop 保姆级安装使用教程
windows·docker·容器
星辰徐哥1 天前
大模型工程化部署:Docker Compose批量部署
运维·docker·容器