当我运行此订单时:
mysql>insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));
Query OK, 1 row affected, 3 warnings (0.14 sec)
有时当我使用此订单登录时:
mysql -u test -p
ERROR 1045 (28000): Access denied for user 'test'@'localhost' (using password: NO)
但是,当我使用时:
mysql -u test
它可以成功登录。
我可以尝试这个sql命令来解决这个问题:
mysql>delete from mysql.user where user='';
mysql>flush privileges;
但我仍然不明白为什么会这样?
在大多数情况下,我只需要使用mysql>flush privileges;
即可。