【发布时间】:2019-12-07 19:24:44
【问题描述】:
我以root 的身份登录
sudo mysql -u root
并使用此命令创建了一个数据库 xxx:
CREATE DATABASE xxx;
我想用这个命令给 xxx 上的用户 webuser 权限:
GRANT ALL PRIVILEGES ON xxx.* TO 'webuser'@'localhost';
我收到了这条消息:
ERROR 1133 (42000): Can't find any matching row in the user table
我做错了什么?
附加信息:
用户已经存在。这个:
mysql> SELECT User, Host FROM mysql.user WHERE User='webuser';
输出为:
+---------+------+
| User | Host |
+---------+------+
| webuser | % |
+---------+------+
1 row in set (0.00 sec)
【问题讨论】:
-
首先你应该创建webuser用户来添加特权
-
@FarshadFahimi:用户已经存在
-
用户不是
localhost,而是% -
@FarshadFahimi:我不知道为什么是 %。在任何情况下,
GRANT command should be GRANT ALL PRIVILEGES ON xxx.* TO 'webuser'@'localhost' IDENTIFIED BY 'password';都有效。 -
%表示每个人都可以访问
标签: mysql privileges