是否有人知道是否有一种方法来确认是否有my.cnf文件正在被MySQL读取?
我在机器上只有一个my.cnf (没有my.ini文件),这是我在/etc/my.cnf中拥有的。
当我运行./mysqld --help --versbose时,它没有给我我在文件中设置的变量,所以我的假设是它没有加载它,或者它正在加载一个不同的文件。
通过将my.cnf设置为777并再次运行命令,我对此进行了测试,这一次我收到警告说文件不会被加载,因为它是世界可写的。
这是否足以暗示已经加载了my.cnf,并且其中可能存在错误,导致变量未被设置,或者是否有其他方法可以确定加载了什么(如果有的话) my.cnf文件?
发布于 2011-01-19 14:50:21
如果只有一个my.cnf文件,并且是/etc/my.cnf,那么这就是它加载的文件。从手册中:
在Unix、Linux和Mac上,MySQL程序按照指定的顺序从以下文件读取启动选项(首先使用顶部项)。/etc/my.cnf全局选项SYSCONFDIR/my.cnf全局选项$MYSQL_ home /my.cnfServer-特定选项默认值-使用--缺省值指定的文件--extra=path,如果存在任何~/.my.cnf用户特定选项(在主目录中)
因此,如果您检查其他目录,并且没有my.cnf文件,您可以确定它是从/etc/my.cnf加载的。
如果您使用MYSQLAdministrator,应该可以从Service >Configuration>Config文件名获得它,就像按照这个职位那样。
发布于 2011-01-20 16:36:58
这有点粗糙,但我刚刚拿到了生产线。
ps aux | grep mysql在输出中,mysql进程行将出现,并且应该包括正在加载的--默认文件。
发布于 2011-01-25 03:11:13
连接到您的服务器并运行查询SHOW VARIABLES,以验证您在my.cnf文件中放置的设置是否是服务器正在操作的设置。
https://dba.stackexchange.com/questions/703
复制相似问题