MySQL忘記root密碼的解決方法

? ? ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

?? ?ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

? ? ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

? ? MySQL數(shù)據(jù)庫(kù)多次輸入密碼錯(cuò)誤再登陸或者不輸入密碼會(huì)提示如下錯(cuò)誤信息,如下圖:

????同樣的如果登陸是輸入密碼錯(cuò)誤也會(huì)提示這個(gè)信息,只不過(guò)后面的NO變?yōu)閅ES。這個(gè)都是密碼錯(cuò)誤導(dǎo)致的,如下圖所示:

? ? 好在MySQL提供了跳過(guò)驗(yàn)證的登陸方式,我們可以先使用這個(gè)方式登陸重新設(shè)置root密碼,然后再轉(zhuǎn)回正常登陸模式,方法如下:

? ? 1、找到配置文件,有些系統(tǒng)的是在/etc路徑下的my.cnf,小編的配置文件的路徑為/etc/mysql/mysql.conf.d,根據(jù)自己的實(shí)際情況,如下圖所示:

? ? 2、編輯該文件,在提示中輸入E進(jìn)行編輯,如下圖所示:

? ?3、輸入i,進(jìn)入插入模式,在[mysqld]字段下插入skip-grant-tables,如下圖所示:

? ? 4、按鍵盤上的Esc,退出插入模式,輸入:wq,按回車鍵保存并退出,如下圖所示:

? ? 5、重啟MySQL數(shù)據(jù)庫(kù),如下圖所示:

? ? 6、使用mysql指令進(jìn)入MySQL數(shù)據(jù)庫(kù),進(jìn)行密碼重置,如下圖所示:

? ? 7、按照第2、3步驟,將原來(lái)添加的skip-grant-table刪除,保存退出,如下圖所示:

? ? 8、再次重啟MySQL數(shù)據(jù)庫(kù),如下圖所示:

????按照上述步驟修改完之后,就可以正常登陸,如下圖所示:

????另外如果輸入mysql指令時(shí),進(jìn)入不了數(shù)據(jù)庫(kù),而是提示如下錯(cuò)誤,如下圖所示:

????這是因?yàn)橥V沽薓ySQL服務(wù),使用指令sudo /etc/init.d/mysql start啟動(dòng)服務(wù)即可。

?著作權(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)容