首頁  >  文章  >  資料庫  >  MySQL忘記密碼的解決方法:無密碼登入並重設root密碼

MySQL忘記密碼的解決方法:無密碼登入並重設root密碼

青灯夜游
青灯夜游轉載
2022-01-07 19:44:074311瀏覽

MySQL忘記密碼了怎麼辦?以下這篇文章跟大家介紹一下無密碼登入MySQL,然後重設root密碼的方法,希望對大家有幫助。

MySQL忘記密碼的解決方法:無密碼登入並重設root密碼

接手一個專案時,如果上一位負責人沒有把專案文件、帳號密碼整理好是一件很頭痛的事情。 。例如,當你想開啟MySQL資料庫的時候 輸入:

mysql -u root -p 一回車想輸入密碼,發現密碼錯誤! !

# [MySQL for Linux錯誤ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)]

#立刻有種想要砸鍵盤的衝動~不過別慌,程式設計師最厲害的地方就是,上網找解決方案哈哈;【相關推薦:mysql影片教學

#下面就跟大家分享  《MySQL忘記密碼的解決方案》

#1、找到 my.cnf 設定檔的位置

windows下修改的是my.ini,這裡主要說的是Linux的具體操作,

Linux系統使用whereis 能夠很方便地找到檔案的位置:

$ whereis my
$ my:/etc/my.cnf

2、修改my.cnf

如果你是root 用戶,直接vim /etc/my.cnf (註:windows下修改的是my.ini)

如果你是普通用戶, sudo vim /etc/my.cnf

##進入vim編輯器編輯之後,找到[mysqld] ,按鍵盤的i 鍵進入編輯模式,在[mysqld]後面任一行加上 

skip-grant-tables 用來跳過密碼驗證的流程:

按ESC 退出編輯,鍵入 

:wq ,回車即儲存並退出。

3、 重啟mysqld 服務

$ sudo /etc/init.d/mysqld restart

一般使用者在這個指令最前面加上 

sudo ,root 使用者就不用啦。

4、無密進入MySQL

<br/>

出現Entering password 不必理會,回車即可進入 MySQL 資料庫。

5、修改root密碼

進入到MySQL 資料庫之後,我們就可以更新"mysql"資料庫中「user」表的root記錄的密碼了

mysql > use mysql;
mysql > update user set password=password(&#39;YOUR_NEW_PASSWORD&#39;) where user=&#39;root&#39;; 
mysql > flush privileges;

步驟解析:

 

use mysql; 進入到名為「mysql」 的資料庫,

接著使用update 語句更新密碼,

更新密碼之後使用 

flush privileges; 刷新權限。

注意:  password()函數是用於密碼儲存的加密函數,此函數的加密過程不可逆!因此除非用大量的資料進行比對,不然沒辦法使用什麼逆函數查看舊的密碼,只能使用該函數更新密碼,YOUR_NEW_PASSWORD 就是自己設定的新密碼。

設定好新密碼之後,Ctrl D退出 MySQL 資料庫。

6、重新設定 my.cnf<span style="font-size: 18px;"></span> 檔案

重新用vim 打開my.cnf ,將剛才的skip-grant-tables 刪除或在前面加上#號註釋,儲存並退出。

7、重啟mysqld 服務

$ sudo /etc/init.d/mysqld restart

8、用新密碼進入MySQL#

$ mysql -u root -p

更多程式相關知識,請造訪:

程式設計影片! !

以上是MySQL忘記密碼的解決方法:無密碼登入並重設root密碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:juejin.cn。如有侵權,請聯絡admin@php.cn刪除