MySqlException:用户'altjenb'@'localhost'拒绝访问(使用密码:YES)

时间:2017-01-12 09:36:14

标签: mysql unity3d unity5

我不知道为什么我得到这个,用户,altjenb在mysql数据库中具有完全访问权限,但我仍然遇到同样的错误。我尝试在mysql8.db4free.net和db4free.net上使用在线数据库并得到了同样的错误。尝试在localhost(xampp)中仍然出现相同的错误..

  

MySqlException:用户'altjenb'@'localhost'拒绝访问(使用   密码:是)

这是连接字符串

MySqlConnection connectionstring = new MySqlConnection("Server=localhost; port= 3306; Database=battlehunt_db; UserId=altjenb; Password=egrgeaf;");

我手动授予用户完全访问权限。但仍然没有, 我试图通过

提供访问权限
GRANT ALL PRIVILEGES ON * battlehunt_db. * TO 'altjenb'@'localhost';

但仍然是同样的错误。

但是当我将userID更改为root并且没有密码时。它连接到数据库..看起来它没有收到用户名..我试图添加一个未注册的随机用户名(例如egwetr),但仍显示相同的错误..

我该如何解决这个问题?

我试图将unity3d 5与mysql db连接

2 个答案:

答案 0 :(得分:1)

问题不在于代码。但是使用连接器,我使用的连接器版本不会使用mysql8更新。

答案 1 :(得分:0)

好的,解释我对这个问题的评论。

假设该用户的密码正确,则显示错误消息:

class fopl
{
    public static void main(String str) 
    {
    int n=str.length();
        for (int i = 0;i<n; i++) 
    {
        if (n>=0) 
        {
            String space = str.charAt(i)+" ";
            System.out.print(space);
        }
    }
}   
}

这可能意味着用户没有权限连接到服务器&#39; localhost&#39;

在用户表中,您可以看到哪个主机具有权限:

MySqlException: Access denied for user 'altjenb'@'localhost' (using password: YES)

在此示例中,user1可以连接到localhost和127.0.0.1,所以:

---------------------------
   user     |    host     |
---------------------------
user1       |   localhost |
user1       |   127.0.0.1 |
user2       |   127.0.0.1 |

两个连接都可以正常工作

但是用户2只能访问127.0.0.1

这样:

new MySqlConnection("Server=localhost; port= 3306; Database=battlehunt_db; UserId=user1; Password=egrgeaf;");
new MySqlConnection("Server=127.0.0.1; port= 3306; Database=battlehunt_db; UserId=user1; Password=whatever;");

会失败,因为它试图连接到&#39; localhost&#39;

new MySqlConnection("Server=localhost; port= 3306; Database=battlehunt_db; UserId=user2; Password=egrgeaf;");

会成功。

在Mysql的用户表中检查哪些主机可以访问用户&#39; altjenb&#39;,如果&#39; altjenb&#39;没有主人&#39; localhost&#39;您可以添加它或将连接字符串更改为用户拥有的其中一个主机。

希望这个帮助