今天在mysql中新建了个用户,重启服务后,新用户始终无法登录,后来加了一条命令,好了
grant all on *.* to 'hardwin' IDENTIFIED by 'hardwin';
新建账户hardwin,授予所有权限,设置密码hardwin
新建mysql账户的时候,可能会遇到如下问题,明明建好了用户,密码设置也没有问题,可是在本地用命令行登录的时候却无法登录,
并且会出现如下提示:
ERROR 1045 (28000): Access denied for user 'hardwin'@'localhost' (using password: YES)
这是为什么呢,也许你已经仔细检查自己的命令很多次了,也不会发现错误,但是尝试用如下命令登录一下
mysql -uhardwin
不输入密码居然能登录!
这下找到问题了,原来mysql把我们新建的hardwin账户当成了匿名账户,实际上我们不指定localhost确实是代表任意主机,但是在本地匿名账户的优先级会高于我们新建的账户,解决办法是再添加一个命令特别指出我们的账户是在本地适用的,如下: