对于自制mysql安装,my.cnf在哪里?它安装了吗?


当前回答

我已经使用Homebrew安装了MySQL 5.7

My.cnf文件位于“/opt/homebrew/etc/ My.cnf”

其他回答

没有什么能真正帮到我——我无法覆盖/etc/my.cnf文件中的设置。 所以我搜索了约翰建议的https://stackoverflow.com/a/7974114/717251

sudo /usr/libexec/locate.updatedb
# wait a few minutes for it to finish
locate my.cnf

它发现另一个my.cnf在

/usr/local/Cellar/mysql/5.6.21/my.cnf

更改这个文件对我有用!别忘了重启启动Agent:

launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

更新:

如果你最近安装了homebrew,你应该使用brew services命令重新启动mysql(使用你安装的homebrew mysql版本,即mysql或mysql@5.7):

brew services stop mysql
brew services start mysql

在Homebrew的情况下,mysql也会在它的Cellar目录中查找my.cnf,例如:

/usr/local/Cellar/mysql/5.7.21/my.cnf

对于这种情况,人们更喜欢将配置文件保持在接近二进制文件的位置——如果缺少的话,在这里创建my.cnf。

修改后重启mysql:

brew services restart mysql

在shell上输入my_print_defaults——help

在结果的底部,您应该能够看到服务器从中读取配置的文件。它输出如下内容:

Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf

run

Sudo查找/ -name my.cnf

通常第一个结果是正确的。 应该在

/ usr / local / etc /

homebrew mysql在安装的support-files文件夹中包含样例配置文件。

ls $(brew --prefix mysql)/support-files/my-*

如果需要更改默认设置,可以使用其中一个作为起点。

cp $(brew --prefix mysql)/support-files/my-default.cnf /usr/local/etc/my.cnf

正如@rednaw指出的那样,MySQL的自酿安装很可能在/usr/local中,所以my.cnf文件不应该被添加到system /etc文件夹中,所以我改变了命令,将文件复制到/usr/local/etc中

如果你正在使用MariaDB而不是MySQL,请使用以下命令:

cp $(brew --prefix mariadb)/support-files/my-small.cnf /usr/local/etc/my.cnf