ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
于是换成mysql -u root -p 也出现一样的。
网上找了下原因,说先输入初始密码,也就是如下图:
弄了好久,发现正确的方式应该是:
mysql -uroot -p
然后在提示的Enter password:中输入密码即可
1.开始&→运行&→cmd,打开命令提示符窗口,输入命令net stop mysql2.找到MySQL安装目录中的my.ini文件,用记事本打开后分别找到basedir和datadir,根据你MySQL安装路径分别设置好路径,然后继续查找[mysqld],找到后在其下面一行输入skip-grant-tables后保存my.ini
3.继续打开命令提示符窗口,输入命令net start mysql
4.打开MySQL直接按回车以空密码登录,相关命令如下所示:
12
D:\MySQL\bin>mysql -u root -p(提示输入密码时直接按回车键)
5.打开命令提示符窗口,输入命令net stop mysql
6.第2步中查找[mysqld],找到后在删除刚刚输入的skip-grant-tables后保存my.ini
7.打开命令提示符窗口,输入命令net start mysql
8.打开MySQL直接按回车以空密码登录,具体命令见第4步,然后修改MySQL密码,具体命令如下所示:
1
mysql>set password for root@localhost=password('password')//password为要设置的密码
经过以上设置后就MySQL数据库就可以正常使用了。
可能是密码错误,或者用户忘记密码mysql>CREATE USER 'nonexistant'@'%' IDENTIFIED BY '123456'Query OK, 0 rows affected (0.00 sec)
修复:检查和/或重置密码:您无法从 MySQL 以纯文本格式读取用户密码,因为密码哈希用于身份验证,但您可以将哈希字符串与“PASSWORD”函数进行比较。
我们可以看到 PASSWORD('forgotten')哈希与 authentication_string 列不匹配,这意味着 password string ='forgotten' 不是正确的登录密码。如果您需要覆盖密码,可以执行以下查询:
mysql>set password for 'nonexistant'@'%' = 'hello$!world'Empty set (0.00 sec)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)