mysql忘記密碼的處理


 

第一步:關閉Mysql服務
首先先停止mysql服務。可通過net stop mysql或者任務管理器中關閉。

 

 

以管理員權限操作:(這是第一個窗口)

 

 


第二步:跳過Mysql密碼驗證
進入命令提示符(管理員登陸)操作,進入mysql目錄中bin文件夾下,mysql8.0與其他版本不同的地方在於無法直接使用mysqld --skip-grant-tables來跳過密碼登錄。在這我們使用mysqld -console --skip-grant-tables --shared-memory來跳過權限驗證。

 

 


輸入執行后沒有反饋,新開一個管理員窗口重新執行。(這是第二個窗口)

進入目錄后,確保自己已經關閉了Mysql的服務:net stop mysql

 

 

關閉Mysql服務之后,繼續在D:\mysql-8.0.19-winx64\bin目錄下進行操作:
輸入

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

在輸入這行代碼之后,如下顯示,我們就已經成功跳過Mysql的密碼登錄了:

 

 


第三步:無密碼方式進入Mysql
在上述步驟之后,再打開一個管理員模式運行的cmd.exe (這是第三個窗口)

進入mysql下的bin目錄后,直接登錄mysql

不需要通過net start mysql打開mysql服務

在命令行中輸入以下代碼

d:
cd D:\mysql-8.0.19-winx64\bin(此處輸入自己電腦上的安裝目錄)
mysql -u root -p

如圖:

 

 


此時會顯示讓你輸入密碼,直接回車,就可以成功連接Mysql。

 

 


第四步:將登陸密碼設置為空
輸入代碼,將密碼設置為空(此時還不能直接修改密碼,必須先設置為空,否則會報錯)
輸入:

use mysql; (使用mysql數據表)
update user set authentication_string='' where user='root';(將密碼置為空)
quit; (然后退出Mysql)

操作如圖:

 

 


第五步:更改自己的登陸密碼
這里分為兩個部分

1.關閉前兩個cmd窗口(一定要關閉!);
2.在第三個窗口中輸入代碼;
net stop mysql(關閉mysql服務,雖然會顯示沒有開啟服務,但是以防萬一)
net start mysql(再打開mysql服務)

(這里不要嫌麻煩,如果上一個mysql服務沒關閉,我們依舊是無密碼登陸)

操作如圖:

 

 

接着輸入:

cd D:\mysql-8.0.19-winx64\bin (此處輸入自己電腦上的安裝目錄)
mysql -u root -p
(此處會顯示輸入密碼,直接回車就好了,第四步我們已經將他置為空了)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';(更改密碼)

如圖:

 

 


最后一步:驗證密碼是否修改成功
輸入:

quit(退出mysql)
mysql -u root -p
(輸入新密碼,再次登錄)

圖示:

 

 

成功!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM