在宿主机的conf.d里面创建my.cnf
添加以下内容
[mysqld]
#binlog格式
binlog_format = mixed
#存放地址,注意这个地址是docker容器里面的地址,不是宿主机里面的地址
log-bin=/var/lib/mysql/mysql-bin
server-id=123654
#存放时间
expire_logs_days=30
#最大文件大小
max_binlog_size=50m
#缓存大小
binlog_cache_size=10m
#最大缓存大小
max_binlog_cache_size=512m
注意:log-bin=/var/lib/mysql/mysql-bin是docker容器里面的地址,不是宿主机的地址
并且要给这个文件赋权限,进入容器里面赋权限:
docker exec -it mysql /bin/bash
chown -R mysql:mysql /var/lib/mysql/mysql-bin
退出容器
exit;
然后重启mysql
docker restart mysql
连接数据库输入以下命令:
show variables like '%log_bin%'
![](https://img-blog.csdnimg.cn/271323fbaab24172bfc35c0a451640b9.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAcXh5XzEyMTg=,size_20,color_FFFFFF,t_70,g_se,x_16)
即已开启binlog日志