docker启动mysql未读取my.cnf配置文件问题

描述

在做mysql主从复制配置两台mysql时,从节点的my.cnf配置为:

[mysqld]
datadir = /usr/local/mysql/slave1/data
character-set-server = utf8
lower-case-table-names = 1
# 主从复制-从机配置# 从服务器唯一 ID
server-id = 2
# 启用中继日志
relay-log = mysql-relay

其中server-id = 2为配置从节点必须配置的,但是启动mysql使用show slave status;命令发现,状态异常,使用show variables like 'server_id';发现server_id为默认的1。

查询docker容器日志docker logs mysql-slave-1 | grep server-id发现出现警告

[Warning] World-writable config file ‘/etc/mysql/my.cnf’ is ignored.
在这里插入图片描述
说明mysql启动时跳过了读取该配置文件的过程。

原因及解决方式

跳过读取配置文件的原因是my.cnf给的权限太搞了,mysql担心这种文件被其他用户恶意修改,所以选择了跳过。具体查看方式可以进入容器docker exec -it mysql-slave-1 /bin/bash,后查看权限ls -l /etc/mysql/my.cnf,可以查看到该文件权限为777,。
解决的方式就是将该文件设置为644权限,chmod 644 /etc/mysql/my.cnf.
在这里插入图片描述
修改后重启重启即可,docker restart mysql-slave-1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值