我输入了以下:授权后发生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