解决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下方
相关推荐
nhdh7 小时前
B+树揭秘:MySQL索引核心原理全解析
数据结构·b树·mysql
小白的码BUG之路8 小时前
Docker -- 构建nacos镜像
运维·docker·容器
余槐i9 小时前
MySQL 深分页从 4 秒到 60 毫秒:延迟关联减少回表的实测与代价
mysql·性能优化·sql优化·执行计划·慢查询优化
PHP实战开发录11 小时前
MySQL字段加索引为什么没变快
数据库·mysql·php·开发
天衍四九-12 小时前
【无标题】
前端·spring boot·mysql·nginx·docker
赵谨言12 小时前
红蓝对抗Docker渗透复盘-技能与产出汇总
docker·容器·eureka
Lysander.Jovian12 小时前
mysql数据库基本使用
mysql
Shadow(⊙o⊙)13 小时前
MySQL索引
数据库·mysql
fb_1234514 小时前
MySQL运维实战:备份恢复+主从复制+读写分离+MHA高可用(超详细手把手教程)
运维·mysql·oracle
杨云龙UP15 小时前
一次数据库查询缓慢故障复盘:大表数据增长、SQL全表扫描导致系统响应异常
linux·运维·服务器·数据库·sql·mysql