欢迎来到站长天空!

其它服务器

当前位置: 主页 > 服务器 > 其它服务器

Docker内部MySQL如何开启binlog日志

时间:2025-12-05 09:30:03|栏目:其它服务器|点击:

查看 binlog状态

在MySQL终端执行一下,Navicat都行

show variables like '%log_bin%'

Docker内部MySQL如何开启binlog日志

发现是没有开启binlog

修改Docker的MySQL的my.cnf配置文件

添加下面内容

注意:

log-bin = /logs/mysql-bin.log 是Docker内部的路径,不是Linux宿主机的路径

#设置日志格式
binlog_format = mixed
#设置日志路径,注意路经需要mysql用户有权限写
log-bin = /logs/mysql-bin.log
#设置binlog清理时间
expire_logs_days = 5
#binlog每个日志文件大小
max_binlog_size = 50m
#binlog缓存大小
binlog_cache_size = 4m
#最大binlog缓存大小
max_binlog_cache_size = 512m

重启docker容器重启失败发现报错信息

docker restart 命令重启docker之后发现重启失败

查看docker日志:

docker logs 容器id

2021-01-16 07:05:53 0 [Note] mysqld (mysqld 5.6.49-log) starting as process 29 ...
mysqld: File '/logs/mysql-bin.index' not found (Errcode: 13 - Permission denied)
2021-01-16 07:05:53 29 [ERROR] Aborting
2021-01-16 07:05:53 29 [Note] Binlog end

上面意思是没权限,需要给docker内部的这个/logs赋予权限

开始解决问题

把上面修改binlog的配置还原回来,重启docker容器,让docker重启成功,进入docker容器

命令 : docker exec -it 容器id bash

进入容器之后执行:

chown -R mysql:mysql   /logs

修改MySQL目录的用户和用户组权限

修改完了之后退出docker

然后再给修改binlog日志信息,接着重启docker容器,发现docker容器启动成功

验证一下

连接MySQL执行一下

show variables like '%log_bin%'

Docker内部MySQL如何开启binlog日志

发现已经开启binlog

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

上一篇:如何使用Docker定时备份数据

栏    目:其它服务器

下一篇:Docker如何拉取oracle11g镜像

本文标题:Docker内部MySQL如何开启binlog日志

本文地址:https://zz.feitang.co/server/28576.html

广告投放 | 联系我们 | 版权申明

申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:257218569 | 邮箱:257218569@qq.com

Copyright © 2018-2025 站长天空 版权所有 Powered by EyouCms冀ICP备14023439号