是否有一个MySQL命令来定位my.cnf配置文件,类似于PHP的phpinfo()定位它的PHP .ini?


当前回答

尝试运行mysqld——help——verbose | grep my.cnf | tr " " "\n"

输出类似于

/etc/my.cnf
/etc/mysql/my.cnf
/usr/local/etc/my.cnf
~/.my.cnf

其他回答

你可以用find命令找到my.cnf或任何其他文件:

find / -name my.cnf (or any other file name)

Find是一条命令 /(斜杠)为路径 My.cnf是一个文件名

正如konyak所指出的,你可以通过运行mysqladmin——help来获得mysql将查找my.cnf文件的位置列表。因为这是相当啰嗦的,你可以快速得到你关心的部分:

$ mysqladmin --help | grep -A1 'Default options'

这将给你类似的输出:

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

根据你安装mysql的方式,有可能这些文件都不存在。您可以使用cat来查看您的配置是如何构建的,并在需要时在您的首选位置创建自己的my.cnf。

在Ubuntu上(直接编辑):

$ sudo nano /etc/mysql.conf.d/mysqld.cnf

如果你用的是安装了Homebrew的Mac电脑,那就用吧

编译mysql信息

你会看到

$ brew info mysql
mysql: stable 5.6.13 (bottled)
http://dev.mysql.com/doc/refman/5.6/en/
Conflicts with: mariadb, mysql-cluster, percona-server
/usr/local/Cellar/mysql/5.6.13 (9381 files, 354M) *

最后一行是MySQL文档中的INSTALLERDIR

我不知道你是如何在Linux环境下安装MySQL的,但你检查过吗?

/etc/my.cnf