创建一个新的MySQL用户

时间:2013-05-29 23:58:00

标签: mysql

我正在学习如何使用查询创建用户。我发现以下内容正在我的localhost上工作,但我不确定百分号(%)的含义。它创建了用test_user作为主机“主机”的用户%,如phpMyAdmin中所示,而不是像我其他用户那样的localhost主机。

CREATE USER 'test_user'@'%' IDENTIFIED BY 'password';

另外,在为这个用户分配权限时我会做错什么?

这不起作用:

GRANT SELECT, UPDATE ON test_db.* TO 'test_user'@'localhost';

这有效:

GRANT SELECT, UPDATE ON *.* TO 'test_user'@'localhost';

3 个答案:

答案 0 :(得分:2)

MySQL中的%字符是字符串的通配符。使用%作为用户的主机名允许他们从任何主机进行连接。

您可以在此处找到有关它的更多信息:MySQL account name reference

答案 1 :(得分:1)

%是MySQL通配符,类似于正则表达式和其他几个地方的*

在此,它决定test_user可以从任何IP连接。

答案 2 :(得分:1)

据我所知,%sign是SQL中的通配符。因此,这意味着test_user的主机能够从任何主机/ IP连接。