解决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]下方
相关推荐
Boilermaker199232 分钟前
[MySQL] 服务器架构
数据库·mysql·架构
原神启动132 分钟前
Docker 场景化作业:生产环境容器操作实训
运维·docker·容器
呼啦啦呼啦啦啦啦啦啦2 小时前
docker制作镜像的两种方式(保姆级教学)
运维·docker·容器
qualifying2 小时前
MySQL——表的操作
数据库·mysql
学Linux的语莫3 小时前
mysql主从同步(复制)搭建
数据库·mysql
MySQL实战3 小时前
MySQL 在哪些场景下不会写 binlog
mysql
苹果酱05673 小时前
解决linux mysql命令 bash: mysql: command not found 的方法
java·vue.js·spring boot·mysql·课程设计
qq_455760854 小时前
docker - 网络
运维·docker·容器
问道飞鱼4 小时前
【数据库知识】MySQL 多表关联高效实现指南:场景化方案与底层原理
数据库·mysql·多表关联
dblens 数据库管理和开发工具4 小时前
MySQL :5.7与8.0版创建用户与授权、密码认证插件、角色、密码过期策略
数据库·mysql·dblens·mysql创建用户·mysql设置密码·mysql用户授权