/etc/中
/etc/mysql/
$ MYSQL_HOME/中
[DATADIR] /
〜/ .
这些是MySQL看到的默认位置。如果它找到多个,它将加载它们中的每一个和值互相覆盖(按照列出的顺序,我认为)。此外,--defaults-file参数可以覆盖整个事物,所以...基本上,它是一个巨大的痛苦的屁股。
但是由于它如此混乱,很有可能它只是在/etc/中。
您实际上可以“请求”MySQL以查找其搜索(或Windows上的)的所有位置的列表。但它不是SQL查询。相反,执行:
$ mysqladmin --help
或者,在5.7之前:
$ mysqld --help --verbose
** 我采用此方法 **
在第一行中,您将找到一条消息,其中包含所查找的所有位置的列表。在我的机器上它是:
Default options are read from the following files in the given order:
/etc/
/etc/mysql/
/usr/etc/
~/.
或者,在Windows上:
Default options are read from the following files in the given order:
C:\Windows\
C:\Windows\
C:\
C:\
C:\Program Files\MySQL\MySQL Server 5.5\
C:\Program Files\MySQL\MySQL Server 5.5\
但请注意, 可能是这些位置中没有文件的情况 。因此,您可以自己创建文件 - 使用MySQL发行版提供的示例配置文件之一(在Linux上 - 请参阅/usr/share/mysql/*.cnf文件并使用适合您的文件 - 将其复制到/etc/然后根据需要进行修改)。
另外,请注意 还有一个命令行选项--defaults-file,它可以定义或文件的自定义路径。例如,Windows上的MySQL 5.5就是这种情况 - 它指向数据目录中的文件,该文件通常不会与mysqld --help --verbose一起列出。在Windows上 - 请参阅服务属性以查明是否适合您。