MySQL 8.0 登陆报错 “ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using passwor”
一、问题出现原因:
往往是由于密码错误导致,修改登陆密码即可
二、修改登陆密码:
经过尝试发现常用的有两种解决方案:
1、修改 my.ini文件:
在my.ini文件的[mysqld]后面添加“ skip-grant-tables ”(不包含双引号)
my.ini文件的位置在"C:\ProgramData\MySQL\MySQL Server 8.0"目录下
语句的意思为登陆跳过认证--登陆不需要输入密码,然后重启mysql服务
2、管理员身份打开cmd窗口,重启mysql服务
net stop mysql
net start mysql
然后执行跳过密码登陆指令: mysqld --console --skip-grant-tables --shared-memory
这个命令窗口不要关闭!不要关闭!不要关闭!
另外以管理员身份打开一个cmd窗口
mysqld -u root -p
enter passwd:回车即可
use mysql
update user set authentication_string='' where user='root';
关闭两个之前那个-console窗口
开始修改密码:
net start mysql
mysql -u root -p
enter passwd:回车
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
quit
至此修改密码结束,问题解决
ps:cmd窗口要在管理员身份下运行!**