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

青灯夜游
發布: 2022-01-07 19:44:07
轉載
4024 人瀏覽過

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


登入後複製

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

5、修改root密碼

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

mysql > use mysql;
mysql > update user set password=password('YOUR_NEW_PASSWORD') where user='root'; 
mysql > flush privileges;
登入後複製

步驟解析:

 

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

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

更新密碼之後使用 

flush privileges; 刷新權限。

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

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

6、重新設定 my.cnf 檔案

重新用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
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!