【问题标题】:MySQL Grant User Privileges ErrorMySQL授予用户权限错误
【发布时间】:2011-05-08 04:11:34
【问题描述】:

我有一个关于如何授予权限 MySQL 用户帐户的问题。我有一个 MySQL 用户帐户,在我的示例代码中,我想授予整个数据库的权限。当我运行代码时,我收到以下错误:

用户 'user'@'10.%' 拒绝访问数据库 'testDB'

这是我的源代码:

<?php

  $connection = mysql_connect("sql.example.com", "user", "password");

  mysql_select_db("test");

  $query = mysql_query("GRANT ALL PRIVILEGES ON test.* To 'user'@'localhost' 
                         IDENTIFIED BY 'password'");

if (!$query) {
  die(mysql_error());
}

echo "Success!";

?>

为什么会出现这个错误?有人可以帮我解决这个问题吗?我真的很感激!

【问题讨论】:

    标签: mysql sql mysql-error-1045 sql-grant


    【解决方案1】:

    我猜这和 php 的问题一样,就像原生查询一样 --> 您需要在授权语句之后执行“刷新权限” - 否则用户表不会得到更新。

    http://dev.mysql.com/doc/refman/5.5/en/adding-users.html

    【讨论】:

      【解决方案2】:

      看起来您无法使用该凭据访问您的 mysql 服务器:

      "sql.example.com", "user", "password"
      

      先尝试用密码创建一个用户,然后连接到mysql。

      使用你拥有的root用户进入mysql服务器,这样:

      shell&gt; mysql --user=root mysql

      然后创建您要连接的用户:

      shell&gt; CREATE USER 'monty'@'localhost' IDENTIFIED BY 'some_pass';

      然后给他权限:

      shell&gt; GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost' WITH GRANT OPTION;

      不要忘记设置您的主机以进行连接,在示例中它是 localhost,但在您的情况下它可能是其他东西。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-11-22
        • 2014-03-14
        • 1970-01-01
        • 1970-01-01
        • 2015-11-27
        • 1970-01-01
        • 1970-01-01
        • 2011-05-31
        相关资源
        最近更新 更多