MySQL 中内置了默认值。配置文件,如果有,会覆盖默认值。
请注意,除了启动期间,不会查看配置文件。因此,在您重新启动 mysqld 之前,编辑或创建此类文件无效。
如果您弄乱了语法,mysqld 将无法启动。然后您需要在启动期间或在日志文件中找到错误。 (或者你可以在这里问“我的语法错误是什么”。)
至于将使用的配置文件的位置和名称:
$ mysql --help
为您提供mysql 的列表,但也许您的服务器需要它,所以试试
$ mysqld --help --verbose
给你长输出;可能距离顶部 50 行,您应该会看到如下内容:
Usage: mysqld [OPTIONS]
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf
您询问了my.conf;是不是打错字了?
不管怎样,如果这些文件丢失了,你可以创建它们,让它们被 mysql 读取,然后把东西放在前面[mysqld] 这样服务器就会看到它们。
个人覆盖
无论默认值和/或配置文件中包含什么内容,您都可以添加到最后给出的文件中。在上面的示例中,它是 your 主目录中的“隐藏”.my.cnf。您需要做的就是创建几行代码:
[mysql]
some_setting = somevalue
[client]
some_setting = somevalue
这有助于“mysql”命令行工具和/或其他客户端(也许)。
但如果您需要对服务器 mysqld 进行更改,则它需要位于其他文件之一中。同样,最小值类似于
[mysqld]
some_setting = somevalue
注意mysqld 指的是服务器。并且记得重启服务。
另一个注意事项:如果您看到(在现有配置文件中)!includedir ...,请转到该目录以查找任意数量的其他文件。你可以添加你自己的文件,比如z.cnf(所以它会被最后选择),上面有两行(或更多行)。