my.cnf 配置文件不生效处理
我的是/etc/mysql/conf.d/my.cnf 不生效
1. my.cnf加载顺序
在MySQL中,是允许存在多个 my.cnf 配置文件的,有的能对整个系统环境产生影响,例如:/etc/my.cnf。有的则只能影响个别用户,例如:~/.my.cnf。
MySQL读取各个my.cnf配置文件的先后顺序是:
/etc/my.cnf
/etc/mysql/my.cnf
/usr/local/mysql/etc/my.cnf
~/.my.cnf
其他自定义路径下的my.cnf,例如:/data/mysql/yejr_3306/my.cnf
/etc/my.cnf 里结尾又引入了
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/ 则会读取这两个 文件夹下的配置文件
2. 不生效分析
在docker 里 执行 mysql --help|grep ‘my.cnf’ 命令 (查看mysql读取配置文件顺序)
发现是 我的配置文件 /etc/mysql/conf.d/my.cnf 被忽略了

百度发现是 my.cnf 文件有被修改权限 mysql认为其不安全所以会忽略该配置文件
3.处理
修改好配置后 执行 chmod 644 my.cnf
然后重启配置就生效了
文章讲述了当/etc/mysql/conf.d/my.cnf配置文件在MySQL中不生效时,可能的原因是配置文件的加载顺序或者文件权限问题。MySQL会按照特定顺序读取my.cnf文件,包括系统级和用户级路径。如果在Docker环境下,通过mysql--help|grepmy.cnf可以检查加载顺序。如果my.cnf被标记为不安全,MySQL可能会忽略它。解决方法是确保配置文件权限正确,如使用`chmod644my.cnf`,然后重启MySQL服务使更改生效。
1541

被折叠的 条评论
为什么被折叠?



