![](/img/trans.png)
[英]MySQL on Windows - Access denied for user 'root'@'localhost' after fresh install
[英]“Access denied for user 'root'@'localhost'” on a fresh install of MySQL 5.6.15 on Windows after uninstalling an older version of MySQL
所以,我刚刚在我的Windows机器上安装了MySQL 5.6.15,但出于某种原因我无法使用没有密码的“root”登录。
C:\web\mysql-5.6.15-win32\bin>mysql.exe -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
但是我可以使用“ODBC”登录而无需密码:
C:\web\mysql-5.6.15-win32\bin>mysql.exe
Welcome blah blah blah
mysql> SELECT USER();
+----------------+
| USER() |
+----------------+
| ODBC@localhost |
+----------------+
1 row in set (0.00 sec)
为什么我不能使用没有密码的“root”登录? 我已经尝试卸载MySQL并重新安装它,但无济于事。
我仍然不知道为什么没有密码的“root”帐户默认情况下,但这是我解决问题的方法:
--skip-grant-tables
mysql.exe -u root
登录MySQL(mysql.exe): mysql.exe -u root
(由于步骤2,它不需要密码) UPDATE mysql.user SET Password=PASSWORD('') WHERE User='root'; FLUSH PRIVILEGES;
UPDATE mysql.user SET Password=PASSWORD('') WHERE User='root'; FLUSH PRIVILEGES;
--skip-grant-tables
参数启动MySQL服务 好的,我想我发现了问题所在:
我通过执行以下操作卸载了MySQL 5.1.70:
C:\web\mysql-5.1.70\bin>mysqld.exe --remove
有效。
然后我做了安装MySQL 5.6.15
C:\web\mysql-5.6.15-win32\bin>mysqld.exe --install
它似乎工作。 实际上,它所做的是重新安装旧版本。
解决方法是在运行mysqld.exe --install
之前重命名或删除旧文件夹(C:\\ web \\ mysql-5.1.70)--install
编辑:现在我明白了。 C:\\web\\mysql-5.1.70\\bin
在我的路径中......
卸载旧版本后,当我在Windows上全新安装Mysql时,我遇到了同样的安全问题。 我想出了一种可以解决问题的方法:
安装新版本的MySQL后,转到MySQL \\ MySQL Server 5.5 \\ bin并启动MySQLInstanceConfig.exe 。 这将帮助您重置密码,配置将运行良好
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.