我在本地主机上尝试了类似下面的方法来授予来自任何主机的访问权限:
grant all on tos_db.* to 'tos'@'%' identified by 'tos';
但是,当我在本地主机上尝试以下命令时,它不起作用:
$ mysql -u tos -p
Enter password:
ERROR 1045 (28000): Access denied for user 'tos'@'localhost' (using password: YES)
然后我在 grant 语句中将 %
符号替换为 localhost
。不出所料,它奏效了。但我很困惑。 %
符号不是应该匹配任何主机吗?还是仅适用于远程主机?
最佳答案
您收到该错误是因为通配符 %
不涵盖 localhost 所用于的套接字通信。
关于mysql - 授予来自任何主机(远程或本地)的访问权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27645095/