我在 Windows 计算机上找不到 my.cnf

我的电脑是 WindowsXP。

我需要找到 my.cnf,以便将所有特权返回给 root 用户。我不小心删除了 root 用户的一些特权。我仍然有密码,而且作为 root 用户登录 MySQL 对我来说没有问题。但我不能改变一张桌子。

279032 次浏览

开始-> 搜索-> 文件和文件夹-> 所有文件和文件夹

输入“ my.cnf”然后点击搜索。

您可以搜索这个文件: resetroot.bat

只需双击它,以便您的根帐户将被重置和所有的特权转换为 YES

为了回答你的问题,在 Windows 上,my.cnf文件可以称为 my.ini。MySQL 在以下位置(按照这个顺序)寻找它:

  • %PROGRAMDATA%\MySQL\MySQL Server 5.7\my.ini%PROGRAMDATA%\MySQL\MySQL Server 5.7\my.cnf
  • %WINDIR%\my.ini%WINDIR%\my.cnf
  • C:\my.ini, C:\my.cnf
  • INSTALLDIR \my.ini安装\my.cnf

参见 http://dev.mysql.com/doc/refman/5.7/en/option-files.html

然后,您可以编辑配置文件并添加如下条目:

[mysqld]
skip-grant-tables

然后重新启动 MySQL 服务,您可以登录并做您需要做的事情。当然,您希望在配置文件中尽快禁用该条目!

参见 http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html

Windows7的位置是: C:\Users\All Users\MySQL\MySQL Server 5.5\my.ini

对于 XP 可以是: C:\Documents and Settings\All Users\MySQL\MySQL Server 5.5\my.ini

在这些文件的顶部是定义在哪里可以找到 my.cnf的注释。

我的回答是:

  1. Win + R(“ run”的快捷键) ,键入 services.mscEnter
  2. 您应该找到一个类似于“ MySQL56”的条目,右键单击它,选择 properties
  3. 你应该看到类似 "D:/Program Files/MySQL/MySQL Server 5.6/bin\mysqld" --defaults-file="D:\ProgramData\MySQL\MySQL Server 5.6\my.ini" MySQL56的东西

Full answer here: Https://stackoverflow.com/a/20136523/1316649

如果在 mysql-Client (例如 phpmyadmin)中执行以下查询,就可以找到 basedir (可能在 my.cnf 中)

SHOW VARIABLES