Ubuntu 上的 MySQL 8:/etc/mysql/conf.d/ 和 /etc/mysql/mysql.conf.d/ 之间有什么区别?

Dr.*_*ini 9 mysql ubuntu

如题。在/etc/mysql/my.cnf我看到:

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/
Run Code Online (Sandbox Code Playgroud)

加载了来自两个位置的 .cnf 文件:为什么有两个?对于我自己的 .cnf,哪一个是“正确的”?

小智 5

就我而言,我必须将所有更改添加到目录中,/etc/mysql/mysql.conf.d/因为它是最后加载的。所以我zz_myconfig.cnf在该目录中添加了一个包含所有更改的文件。配置 from 的另一种方式/etc/mysql/mysql.conf.d/mysqld.cnf会再次覆盖我的设置,这是不幸的。

如果该目录/etc/mysql/conf.d是官方路径,那么它也应该是/etc/mysql/my.cnf.


小智 3

两者都是全局选项。在这种情况下,

!includedir /etc/mysql/mysql.conf.d/

是 ubuntu 在 Mysql 编译 CMAKE 选项中的包时生成的 SYSCONFDIR。

更多信息https://dev.mysql.com/doc/refman/8.0/en/option-files.html

  • 感谢您的回复。所以我明白 `/etc/mysql/mysql.conf.d` 只是为了向后兼容,而 `/etc/mysql/conf.d` 才是正确的选择,对吗? (5认同)
  • 将所有内容移动到一个文件(例如 /etc/mysql/my.cnf)可以吗?我只是对 /etc/mysql 下的不同文件和目录感到困惑 (3认同)