MySQL忘記密碼的解決方案(重置密碼)

問(wèn)題描述

之前開發(fā)一個(gè)項(xiàng)目,在本地建了一個(gè)MySQL數(shù)據(jù)庫(kù),后來(lái)項(xiàng)目擱淺,MySQL數(shù)據(jù)庫(kù)就一直躺在硬盤里。也不知道過(guò)了多久,現(xiàn)在需要回過(guò)頭來(lái)繼續(xù)開發(fā)項(xiàng)目,但是MySQL密碼早就忘記了,尷尬⊙﹏⊙‖∣
好在MySQL服務(wù)和安裝目錄都還在,所以嘗試著按照網(wǎng)上的教程來(lái)重置MySQL密碼。

啟動(dòng)MySQL、并重置密碼

MySQL通常是通過(guò)服務(wù)來(lái)啟動(dòng),不過(guò)除了服務(wù)來(lái)啟動(dòng),還可以通過(guò)命令行的方式來(lái)啟動(dòng)。

  1. 首先找到打開服務(wù)窗口,找到MySQL服務(wù),雙擊查看服務(wù)詳情。
    MySQL服務(wù)
  2. 通過(guò)服務(wù)詳情,我們可以看到實(shí)際該服務(wù)的執(zhí)行命令為D:\mysqlx64_5.6.16\bin\mysqld MySQL,即實(shí)際上服務(wù)是通過(guò)調(diào)用mysql命令行來(lái)啟動(dòng)MySQL服務(wù)的,其中所以我們可以手動(dòng)在命令行窗口來(lái)通過(guò)執(zhí)行mysqld命令來(lái)啟動(dòng)mysql。如下:
mysqld MySQL

可以經(jīng)過(guò)一頓操作之后,發(fā)現(xiàn)通過(guò)上面的操作之后,MySQL進(jìn)程并沒有啟動(dòng),真是大寫的尷尬。

進(jìn)程里并沒有MySQL

后來(lái)通過(guò)一番排(bai)查(du)之后發(fā)現(xiàn)如果需要通過(guò)命令行來(lái)啟動(dòng)MySQL,則需要添加--console參數(shù),即完整的命令應(yīng)該是:

mysqld --console

通過(guò)上面的命令,可以成功啟動(dòng)MySQL,并且進(jìn)程列表里也能找到mysqld的進(jìn)程:


mysqld --console執(zhí)行效果

進(jìn)程列表里也能看到mysqld的進(jìn)程
  1. 接下來(lái)算是比較關(guān)鍵的一步,就是通過(guò)跳過(guò)權(quán)限驗(yàn)證的參數(shù)來(lái)啟動(dòng)MySQL。
    在命令行窗口,按Ctrl + C結(jié)束上面的MySQL進(jìn)程之后,另外添加skip-grant-tables參數(shù),可以以跳過(guò)權(quán)限驗(yàn)證的方式啟動(dòng)MySQL。
mysqld --console --skip-grant-tables

此時(shí)我們可以看到MySQL正常啟動(dòng):
MySQL正常啟動(dòng)
  1. 通過(guò)上述方式啟動(dòng)MySQL后,我們?cè)偻ㄟ^(guò)數(shù)據(jù)庫(kù)連接工具,比如Navicat,連接本地的MySQL。由于MySQL啟動(dòng)時(shí)加了skip-grant-tables參數(shù),此時(shí)我們可以輸入任何的賬號(hào)和密碼登錄MySQL。
    登錄MySQL
  2. 修改MySQL中root的密碼。
    MySQL中所有的用戶信息都存在mysql.user表,我們可以通過(guò)修改該表的相關(guān)信息來(lái)達(dá)到修改密碼的目的。
    mysql.user表
update mysql.user set password = password ('abc123') where user = 'root'; -- 其中abc123為新密碼
flush PRIVILEGES; -- 刷新MySQL的系統(tǒng)權(quán)限相關(guān)表
  1. 執(zhí)行完上述操作后,就可以通過(guò)正常方式重新啟動(dòng)MySQL,并用新密碼進(jìn)行登陸了。

寫在最后

對(duì)于參數(shù)skip-grant-tables,除了可以在命令行的的方式添加,也可以通過(guò)修改MySQL配置文件my.ini的方式添加,在此不展開來(lái)講。對(duì)于正式生產(chǎn)環(huán)境,一定要記得關(guān)閉該參數(shù),切記?。?!

參考鏈接:
https://blog.csdn.net/m0_58016522/article/details/121669236

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容