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

相关推荐
梦想的颜色2 小时前
硬核实践:使用 Docker 部署生产级 Redis(持久化 + 安全配置 + 高可用)
redis·docker·redis持久化·docker compose·redis哨兵·rdb aof
weixin_471383032 小时前
Docker - 05 - 构建流程
运维·docker·容器
ejinxian5 小时前
微虚拟机 smolvm 与Docker 容器比较
运维·docker·容器·smolvm
爱码少年6 小时前
Docker如何一次查看多个容器日志
运维·docker·容器
Sean‘7 小时前
GitLab 升级后 502:Puma 反复重启问题处理记录
docker·gateway·gitlab
江畔柳前堤9 小时前
第16章:docker企业级实战综合项目
运维·git·安全·docker·容器·eureka
zh731411 小时前
docker日志监控dozzle,高性能,性能消耗小
运维·docker·容器
weixin_4713830311 小时前
Docker - 05 - Railway 部署
运维·docker·容器
江畔柳前堤11 小时前
第15章:docker故障排查与面试题
大数据·运维·git·elasticsearch·docker·容器·eureka
小二·11 小时前
Docker+K8s生产级部署实战:从0到1打造高可用微服务集群
docker·微服务·kubernetes