1. 程式人生 > >MySQL-8.0.21資料庫密碼忘了如何解決?

MySQL-8.0.21資料庫密碼忘了如何解決?

工作需要,最近搞資料庫,但是密碼不記得了,網上找了很多方法,沒有一個可以一步到位解決成功的。具體方法總結如下,避免以後再掉坑裡兒。 首先,執行操作之前確保mysql伺服器端已結束執行。 一、找到mysql安裝目錄下的bin資料夾,在此開啟命令列介面,輸入以下語句並回車: **mysqld --console --skip-grant-tables --shared-memory** ![](https://img2020.cnblogs.com/blog/1201357/202009/1201357-20200917161353813-132500009.png) 這一步主要是為了跳過mysql的使用者驗證。 二、在mysql安裝目錄下的bin資料夾下,重新開啟一個新的命令列介面,此時可以直接登入資料庫,提示輸入密碼時直接回車 **mysql -u root -p** 三、登入後選擇mysql資料庫,使用者名稱密碼儲存在user表中 1、檢視所有資料庫:show database; 2、選擇mysql資料庫:use mysql 3、檢視所有表:show tables 4、檢視賬戶資訊:**select user,host,authentication_string from user;** ![](https://img2020.cnblogs.com/blog/1201357/202009/1201357-20200917153236232-1568372903.png) ![](https://img2020.cnblogs.com/blog/1201357/202009/1201357-20200917153831457-1498223220.png) 四、先執行下面的語句將密碼設為空 **UPDATE user SET authentication_string = '' WHERE User = 'root';** 五、設定新密碼: **ALTER user 'root'@'localhost' identified by '新密碼';** 此時可能會報錯:The MySQL server is running with the --skip-grant-tables option so it cannot execute。 那麼就執行: flush privileges; 去重新整理許可權;繼續設定新密碼 六、上述步驟執行完之後記得要重新整理許可權 **flush privileges;** 至此密碼就修改成功。可以啟動mysqi服務,登入mysql去驗證是否成功。