解决docker开启MySQL的binlog无法成功。docker内部报错:mysql: [ERROR] unknown variable

1. 报错信息

2. 操作流程

整个流程是这样的:

  • 我愉快的输入docker ps,查看MySQL的docker 容器id
  • 执行指令docker exec -it 8a \bin\bash进入容器内部
  • 执行vim /etc/my.cnf,打开配置文件
  • 按照网上说的,添加如下配置信息
  • 退出docker容器
  • 重启docker docker restart 8a
  • 用navicat远程执行指令SHOW VARIABLES LIKE '%log_bin%'; ,发现log_bin = OFF

3. 问题分析

纳尼!为什么。哥们儿明明配置好了,而且重启了docker,为啥log_bin还是没有开启成功呢?

带着这样的疑问,我再次进入docker,并在docker内部启动MySQL,发现如下报错:

现在就明了为什么重启docker,MySQL的bin-log依旧没有开启。因为配置信息输入有误。MySQL根本就不把log-bin=...当作配置项!。经过一番资料查阅,发现配置文件放在的地方有问题。这些配置信息需要放在[mysqld]标签下,否则MySQL不认这些变量

4. 解决方案

  1. 将这段配置上方人为添加[mysqld]
  2. 找个有[mysqld]的标签,直接将配置写在mysqld下方
相关推荐
for_ever_love__1 小时前
MySQL 8.0 表设计规范:从业务建模、约束到索引评审的完整方法
数据库·mysql·表设计·建表规范
壹玖玖肆1 小时前
openGauss 7.0 Docker 部署 + 跨版本迁移全流程(aarch64)
运维·docker·容器
无垠的广袤1 小时前
【ED-CLAWBOX】智能家居枢纽
linux·物联网·docker·智能家居·树莓派·aiot·home assistant
牛马工作号2 小时前
Docker Compose 部署 FreeRADIUS:从 AAA 原理到 Windows 有线 802.1X 认证实战
windows·docker·容器
牛马工作号6 小时前
Mosquitto + ACME:从 Docker Compose 部署到 TLS 证书自动续期与加载
运维·docker·容器
for_ever_love__11 小时前
MySQL ORDER BY 排序优化:从 Using filesort 到索引有序扫描(含双路 / 单路排序原理)
java·mysql·优化·存储·by·order·filesort
空空dream12 小时前
03 | 离线部署 FastAPI + Ollama(qwen2:0.5b):从 Docker 联调到 Kubernetes 验收
docker·ai·kubernetes·fastapi
Sayai14 小时前
DataX 离线数据同步实战:Elasticsearch 数据批量导出 MySQL(作业配置、并发调优与定时同步平台化设计)
大数据·mysql·elasticsearch·datax·数据同步
颜酱15 小时前
一栋商业大厦,讲清 InnoDB 的表空间、段、区和页
后端·mysql
郭老二16 小时前
【docker】docker compose使用,已nginx为例
nginx·docker·容器