MySQL 登錄報錯 Access denied for user 'root'@'localhost' (using password: NO) 的解決辦法

這個問題是在Windows下安裝MySQL服務時遇到的,安裝完成後,連接到MySQL服務時輸入命令 “ mysql -uroot -p ” ,因爲時第一次登錄,未設置密碼,直接回車,就遇到了這個問題,錯誤信息如下:

“ ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)  ”

如下圖:

解決辦法:

首先需要關閉MySQL服務,輸入命令:

mysql> net stop MySQL

用安全模式開始本地MySQL服務,(注意:以管理員身份啓動cmd窗口),輸入命令 “ mysqld --defaults-file="G:\Install_Applications\mysql-8.0.11\my.ini" --console --skip-grant-tables ” 啓動MySQL服務後,光標會一直停止沒有任何輸出,這兒的話說明MySQL服務已經啓動了。

啓動cmd窗口,輸入命令 “ mysql -uroot -p ” 直接回車登錄到MySQL服務器,然後進行修改,可以輸入命令:

(5.7.11以前) > update user set password=password("123456") where user="root";

(5.7.11 或者以後)> update user set authentication_string=password("123456") where user="root";

在這兒我是用的是:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'HuaZai12345!';

如下圖:

現在退出,在輸入命令 “ mysql -uroot -p ” 在輸入剛纔設置的密碼,就可以正常登錄到MySQL服務器了,如下圖:

ps:如果還不行,可以去mysql 數據庫的user表,查看是不是有一條密碼爲空的數據,把它設置一下root密碼就可以了

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章