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

相关推荐
程序员老赵8 小时前
Docker 部署 Hue:轻松搭建数据库与数据仓库 SQL 查询平台
sql·docker·开源
m0_6174939412 小时前
昇腾 NPU Docker 部署实战:解决 stub library 报错并实现模型正常加载
运维·docker·容器
xixiaoyunya13 小时前
Docker 常用命令与实战:从入门到部署一个简单应用
docker·容器·eureka
吴声子夜歌13 小时前
Docker入门与实战——Docker Swarm模式(跨主机容器集群管理)
docker
pirateeee16 小时前
在ubuntu中通过 docker 搭建 yocto 开发环境
ubuntu·docker·eureka
墨神谕16 小时前
Docker 数据卷(Volume)详解:Dockerfile 声明、Docker Compose 挂载宿主机目录及持久化实战
运维·docker·容器
zh731416 小时前
Docker Desktop docker_data.vhdx 使用时间长了过大,解决办法
运维·docker·容器
墨神谕16 小时前
Docker Compose 从入门到实战:核心概念、YAML 配置详解、常用命令与多容器部署
运维·docker·容器
Tronlong创龙16 小时前
TLT153工控机:Docker 环境部署与容器开发实践(上)
docker·嵌入式开发·硬件开发·工业控制·工业开发板
木雷坞17 小时前
PHP两项9.2分漏洞:Docker容器更新与版本核验教程
开发语言·docker·php