工作需要,最近搞數據庫,但是密碼不記得了,網上找了很多方法,沒有一個可以一步到位解決成功的。具體方法總結如下,避免以后再掉坑里兒。
首先,執行操作之前確保mysql服務器端已結束運行。
一、找到mysql安裝目錄下的bin文件夾,在此打開命令行界面,輸入以下語句並回車:
mysqld --console --skip-grant-tables --shared-memory
這一步主要是為了跳過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;
四、先執行下面的語句將密碼設為空
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去驗證是否成功。