首頁 > 軟體

MySQL8.0+版本1045錯誤的問題及解決辦法

2022-08-23 14:02:57

使用命令列登入MySQL報錯1045 Access denied for user ‘root’@‘localhost’ (using password:YES),折騰半天才解決問題。

一、管理員許可權開啟CMD

二、CD到自己的MySQL安裝目錄

此步驟請根據自己的安裝目錄進行操作。
CD到相應的目錄後鍵入回車即可到自己的安裝目錄,注意要到bin這一級的目錄。

三、停止MySQL服務

或者通過CMD,鍵入net stop mysql停止MySQL服務。不管通過什麼方式,旨在停止MySQL服務。

四、鍵入命令列

輸入此行程式碼並按回車,此時會發現此CMD視窗無法進行輸入。這時無需理會,重新以管理員許可權開啟一個CMD視窗即可。

mysqld --console --skip-grant-tables --shared-memory

五、重新開啟CMD視窗

六、登入MySQL資料庫

七、密碼改為空密碼

UPDATE mysql.user SET authentication_string='' WHERE user='root' and host='localhost';

八、重新整理資料

flush privileges;

九、退出資料庫

十、啟動MySQL服務

十一、命令列正常登入MySQL

番外篇navicat
如果網友發現使用Navicat時報2059錯誤,是因為MySQL8之後修改了加密規則,具體操作如下:
命令列:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密規則,此例中密碼為空,此處的password刪掉即可,只留下 ''(此處為英文單引號)。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下使用者的密碼,此例中密碼為空,此處的password刪掉即可,只留下 ''(此處為英文單引號)。
FLUSH PRIVILEGES; #重新整理許可權 

 

到此這篇關於MySQL8.0+版本1045錯誤解決辦法的文章就介紹到這了,更多相關MySQL8.0報錯1045內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com