图文详解linux/windows mysql忘记root密码解决方案
經常有用戶過來咨詢說自己的mysql服務器忘記密碼了怎么辦,為了更好的解決大家的困擾,本文特歸檔整理了windows和linux系統下,mysql忘記密碼的解決方案。本文內容是我親測實用,當然過程中踩過的坑我也會在本文中一并分享交流。廢話不多說,上菜~
Windows篇
演示環境:
服務器:windows2003 64位企業版
mysql版本:5.6.17
?
操作步驟:
1. 關閉mysql服務。
以管理員身份登錄到您的服務器系統,如果服務器上的Mysql正在運行,則先停止MySQL服務。對于Windows服務器,先轉到“服務”管理器:從“ 開始”菜單中選擇“ 設置--控制面板”,然后 選擇“管理工具”,然后選擇“服務”。在列表中找到MySQL服務并停止它。
如果你使用的是組合包軟件,通常軟件中應該內置了一鍵關閉mysql服務的按鈕。
?
?
2. 運行CMD命令切換到MySql的bin目錄,執行mysqld --skip-grant-tables(注意后面沒有分號)
?
?
3. 此命令行窗口不要關閉,再重新打開一個新的命令行窗口。注意,這時有時會出現一個警告,不要理會即可。
4. 再次打開一個cmd新窗口。按上面方法運行至bin目錄下,運行命令:mysql -u root ?-p,提示輸入密碼,直接回車即可
?
?
5.連接權限數據庫,這一步不能少,否則會掉坑里的。
?
>use?mysql;?
根據我數遍的親測,如果少了這一步,會出現mysql無法啟動,意外終止的結果。如下圖
?
注:如果你不幸已掉坑里,可以參考這里我親測有效的解決方案:http://www.chanzhi.org/thread/1441.html。
6. 執行修改密碼命令,(這里我將密碼修改為123456)。
7. 刷新執行:
mysql>?flush?privileges;?
8. 關閉窗口,注銷系統再進入,開啟mysql服務,重新登錄。
Linux篇
演示環境:
?
服務器:CentOS6.5 64位版
mysql版本:5.7.9
?
操作步驟:
1. KILL掉系統里的MySQL進程;
2. 用以下命令啟動MySQL,以不檢查權限的方式啟動;
3. 然后用空密碼方式使用root用戶登錄 MySQL;
?
4. 修改root用戶的密碼,這里我改為123456;
?
update?mysql.user?set?authentication_string=password('123456')?where?user='root'?;?
你可能會有疑問,上面命令中的“authentication_string”字段是什么。注意我這里安裝的mysql版本是5.7。起初我是用下面的命令進行修改密碼操作的,但是反饋給我一個錯誤提示,如圖所示。
mysql>?update?mysql.user?set?password=PASSWORD('123456')?where?User='root';?
網上查了下資料才知道,原來mysql5.7數據庫下已經沒有password這個字段了。password字段改成了authentication_string。如果大家在具體操作時,根據自己的mysql版本做相應的命令調整即可。
?
5.刷新執行。
?
mysql>?flush?privileges; mysql>?quit?
6.重新啟動MySQL,就可以使用新密碼登錄了。
?
?
小結:
本文和大家一起分享了Windows和linux服務器下,mysql服務root賬戶密碼的修改解決方案。如果大家在實際操作中有其他問題,或者您有更好的解決方案,歡迎和大家一起分享交流。我們共同學習,共同交流,共同進步。
轉載于:https://www.cnblogs.com/webdeve/p/7803854.html
總結
以上是生活随笔為你收集整理的图文详解linux/windows mysql忘记root密码解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CentOS7 升级Python2.x到
- 下一篇: BZOJ 1878: [SDOI2009