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

相关推荐
Lv_沐曦10 分钟前
银河麒麟桌面版安装、多屏配置、触摸校准
运维·docker·samba·vsftpd·银河麒麟·触控校准·多屏配置
浩风祭月2 小时前
一个开发者的“看门狗”:我把服务器监控从被动告警变成了主动预防
后端·docker
梦想的颜色5 小时前
硬核|Docker从入门到精通:镜像构建、仓库推送、Compose编排、生产部署全攻略
运维·服务器·docker·容器·部署·环境·镜像
SXJR5 小时前
使用docker 部署向量数据库Milvus
数据库·docker·容器·milvus·向量数据库
jingqiulyue6 小时前
docker run出现exited或者不断restart怎么办
docker·容器
IT策士8 小时前
Docker 常见面试问题
docker·容器·面试
预测模型的开发与应用研究8 小时前
双Docker Oracle XE 跨库查询操作文档
docker·oracle·容器
逻极8 小时前
Docker容器化实战:从镜像构建到微服务编排与避坑指南
docker·容器·镜像·devops
鹤落晴春9 小时前
【K8s】资源配额与访问控制
docker·容器·kubernetes
我叫张小白。9 小时前
Docker核心命令
运维·docker·容器