本文所述MySQL相關命令已由VPS管理員實機驗證通過
MySQL的root用戶密碼往往容易被遺忘,它本身就有一個跳過權限檢查啓動的機制用來處理權限錯誤問題。本文分別對Windows環境與Linux環境下介紹MySQL忘記密碼/重置密碼的方法,希望幫助初學者解決丟失密碼的煩惱。
MySQL for Windows重置密碼
一般來說,Windows下的MySQL是安裝成服務運行的。本文將以Windows 2003爲例。
1、首先在 控制面板 – 管理工具 – 服務 中將MySQL服務停止。
2、以安全模式(跳過權限認證)啓動MySQL服務
“開始菜單” – “運行” – 輸入“cmd”並回車 – cd至MySQL安裝目錄下的 bin 目錄,然後執行:
1 | mysqld-nt.exe --skip-grant-tables |
3、此時MySQL已經正常運行,通過PhpMyAdmin登錄MySQL,用戶名root,密碼爲空或任何其他字符;
MySQL for Linux重置密碼
Linux下重置密碼的原理與Windows下類似,都是採用安全模式跳過權限檢查啓動MySQL。
1、首先停止MySQL服務,執行如下命令:
1 | [root@www ~] # /etc/init.d/mysql stop |
2、以安全模式啓動MySQL:
1 | [root@www ~] # /usr/local/mysql/bin/mysqld_safe --skip-grant-tables & |
3、此時即可通過phpMyAdmin或者命令行修改密碼。用戶名爲root,密碼爲空即可。
附修改密碼的命令:
首先以命令行模式登錄MySQL:
1 | [root@www ~] # mysql -u root -p |
然後執行如下三條命令:
>use mysql;
> update user set password=password(“新密碼”) where user=”root”;
> flush privileges;