1

由於標題狀態,我試圖改變一個被遺忘的MySQL root密碼。我跟着奧馬爾Bourja here詳細說明(運行帶有然後使用update mysql.user set authentication_string=password('MyNewPass') where user='root';--skip-grant-tables選項& MySQL服務器)的說明。更改被遺忘的root密碼MySQL 5.7.4

但是,雖然操作輸出顯示更改已經過(1 row(s) affected Rows matched: 1 Changed: 1 Warnings: 0),但我仍然無法使用新密碼以超級用戶身份登錄。

我在MySQL Workbench中工作在Windows Server 2012上應該可能還有指出,根據服務MySQL57服務狀態是「停止」,但mysqld正在運行的進程。

這一切都還是很新的給我,請記住這一點。提前致謝!

+0

你試過[官方復位指令(https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html)? – Kateract

+0

是的,我首先嚐試了,但它仍然停留在「以過程7792開始......」並且在事件查看器中顯示錯誤「1131您正在使用MySQL作爲匿名用戶,匿名用戶不允許更改密碼「。這是什麼導致我到另一種方法 –

+0

不知道我做了什麼不同,但我經歷了所有的步驟,這次它的工作。 (我想我使用'更新mysql.user設置密碼= PASSWORD( 'MyNewPass')WHERE用戶= '根';'代替'更新mysql.user設置authentication_string =密碼( 'MyNewPass'),其中用戶= '根'; '即使我可以發誓,我也嘗試過,在某些時候) –

回答

1

更新您應該運行此命令行的密碼後:

FLUSH PRIVILEGES; 

這將使你對mysql.user表的更新,你應該是好去。

更多信息可以在這裏找到Mysql documentation

+0

我這樣做,但我依然收到「訪問被拒絕的用戶‘根’@‘localhost’的(使用密碼:YES)」。 –

+0

不知道我做了不同的是,我再一次完成了所有的步驟,這一次它的工作。 (我想我使用'更新mysql.user設置密碼= PASSWORD( 'MyNewPass')WHERE用戶= '根';'代替'更新mysql.user設置authentication_string =密碼( 'MyNewPass'),其中用戶= '根'; 「儘管我可以發誓,但我在某個時候也試過了。) –