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窗口要在管理員身份下運行!**