授予MySQL权限

时间:2013-07-02 20:20:19

标签: mysql privileges grant

我有一个MySQL数据库,我用它来测试C#应用程序。作为超级用户,我输入以下“查询”:

GRANT ALL PRIVILEGES ON testing.* TO 'Ubuntu'@'localhost';

给予肯定的信息。然后,我退出数据库,以Ubuntu身份重新登录,并在localhost连接上运行以下查询:

USE testing;

并收到此消息:

ERROR 1044(42000): Access denied for user 'ubuntu'@'localhost' to database 'testing'

我也运行此查询:

GRANT ALL PRIVILEGES ON testing.* TO 'Ubuntu'@'%'; 

具有相同的结果。

我到底错过了什么?这似乎是一个相当简单的程序...

2 个答案:

答案 0 :(得分:2)

您需要刷新权限:

FLUSH PRIVILEGES;

正如Ricky指出的那样(这是什么,相互钦佩社会?!)用户名区分大小写,因此用户Ubuntu与用户ubuntu不同

答案 1 :(得分:1)

我认为用户名区分大小写。在您的查询中,我看到您授予“Ubuntu”大小的权限,但在您的错误消息中,“ubuntu”是小写的。

此外,正如AMADANON Inc.所指出的,您很可能需要运行查询

FLUSH PRIVILEGES;

以便实际启动权限。