mysql - 错误 1044 (42000) : Access denied for user '' @'localhost' to database 'db' - I have all privs what more?

标签 mysql

我有一个用户,并且我以该用户身份登录。该用户执行以下操作:

创建数据库错误;

工作正常。

将所有 bugs.* 授予“bugs@localost”;

我发现我没有授予访问权限(当前登录的用户)。

我显示登录用户的权限(通过 select user(); 验证)
+------------------------------------------------ -------------------------------------------------- ------------+
|授予 user1@% |
+------------------------------------------------ -------------------------------------------------- ------------+
|将 *.* 上的所有权限授予由密码“*”标识的“user1”@'%' |
|将 aDatabase.* 上的所有权限授予 'user1'@'%' |
+------------------------------------------------ -------------------------------------------------- ------------+
2 行一组(0.00 秒)

(我将登录的用户更改为 user1,将第二个所有权限更改为 aDatabase
我可以以 root 身份登录并授予权限就好了...

那么,除了“所有权限”之外,我还需要什么权限????以及什么命令将它们授予我。

最佳答案

问题在于执行有问题的语句

grant all on bugs.* to 'bugs@localost';

需要一个名为 GRANT OPTION 的权限,与您可能认为的相反,该权限并不包含在所有权限中。即使如此,该用户也只能将其拥有的权限授予其他用户。请参阅online documentation .

要将 GRANT OPTION 包含在您的第一个授予命令中,请使用以下命令:

GRANT ALL PRIVILEGES ON *.* TO 'user1'@'%' WITH GRANT OPTION;

我已从您的授权声明中删除了 IDENTIFIED BY PASSWORD 子句。

关于mysql - 错误 1044 (42000) : Access denied for user '' @'localhost' to database 'db' - I have all privs what more?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15963259/

相关文章:

php - 当该帖子的标签等于一个主题时,不显示重复的帖子

php - 字符串存储在数据库中的错误字符集中

python - 我可以在 django 1.3 的 orm 中控制 GROUP BY 吗?

php - 如何处理mysql数据库中的多个用户

php - 在 Wordpress 页面的下拉列表中显示来自数据库 mySQL 的数据

C# MySQL 表列表

mysql - MYSQL多列总和

php - 在线输入 PHP 函数,查询(通过 PDO)MySql 输出 JSON

java - 需要帮助设置 Spring/Hibernate Mysql 设置

java - Hibernate 列表映射在一个单独的表中