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