我輸入了以下:授權後發生MySQL錯誤1045,我做錯了什麼?
mysql> grant all on DBNAME.* to '[email protected]' identified by 'MYROOTPWD';
然後我辭職出來的MySQL並做了一些貝殼的東西。現在當我嘗試使用mysql時,它會失敗
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
我不會忘記密碼;我可以在授權命令中看到我的終端上有幾行代碼。我已經嘗試了一堆關於此主題的previous answers,但沒有成功。
我做錯了什麼?當然,我可以重置根密碼並繼續前進,但我想知道我的錯誤,所以我從不重複。
更新:不,我沒有刷新權限。顯然我誤解了它的作用。爲什麼我以前存在的能力(根本不使用mysql)不起作用?
您是否擁有FLUSH PRIVILEGES? – Hackerman 2014-09-04 20:02:33
您是否在執行授權後執行FLUSH PRIVILEGES? – 2014-09-04 20:02:35
請注意,'GRANT'語句會自動執行與「刷新特權」操作等效的操作;當執行GRANT,REVOKE,SET PASSWORD語句時讀取權限表。當直接對特權表進行DML更改時,需要'FLUSH PRIVILEGES'語句;在MySQL再次讀取權限表之前,這些更改不會被注意,並且不會生效。 – spencer7593 2014-09-04 20:29:00