Phpmyadmin #1045无法登录到MySQL服务器Multicraft

Phpmyadmin #1045无法登录到MySQL服务器Multicraft,phpmyadmin,centos,Phpmyadmin,Centos,我有很多问题-#1045无法登录MySQL服务器 我刚刚下载并在我的服务器上安装了MultiCraft。我曾经使用phpMyAdmin,它曾经工作得非常完美。无论如何,MultiCraft正在正确地创建用户,尽管当我准备使用它提供的详细信息登录它时,它无法工作,这会导致此错误-#1045无法登录到MySQL服务器 现在,我开始深入研究,所以我进入根帐户的phpMyAdmin,我看到该帐户已经创建,并且作为主机%1,我将其更改为localhost,它开始工作。现在,如果我要为每个客户执行此操作,他

我有很多问题-#1045无法登录MySQL服务器

我刚刚下载并在我的服务器上安装了MultiCraft。我曾经使用phpMyAdmin,它曾经工作得非常完美。无论如何,MultiCraft正在正确地创建用户,尽管当我准备使用它提供的详细信息登录它时,它无法工作,这会导致此错误-#1045无法登录到MySQL服务器

现在,我开始深入研究,所以我进入根帐户的phpMyAdmin,我看到该帐户已经创建,并且作为主机%1,我将其更改为localhost,它开始工作。现在,如果我要为每个客户执行此操作,他们将不得不等待我执行此操作,这对他们来说有点费时,为什么phpMyAdmin不允许用户以%作为主机登录服务器


谢谢您

在MySQL中,连接到服务器的主要方式有两种:通过UNIX套接字或TCP/IP网络
%
是主机名的通配符运算符,但不适用于套接字。当连接到
localhost
时,它使用套接字连接(是的,我知道在一般的网络术语中,“localhost”被映射到127.0.0.1,但MySQL必须有所不同)

因此,如果您创建(或MultiCraft创建)新用户
foo@localhost
bar@%
,“foo”只能通过套接字连接,“bar”只能通过TCP/IP连接。您应该弄清楚应用程序是如何连接到MySQL的,并对该方法进行标准化。这就是MySQL安装默认为用户的原因root@localhost和root@127.0.0.1,因此您可以从任一方法进行连接

请注意:

  • 我对MultiCraft一无所知,但如果它真的在MySQL中为每个用户帐户创建一个新用户,我会感到惊讶。那是…一种笨拙的做事方式。通常,应用程序会创建一个或几个MySQL帐户供程序使用。MySQL帐户与您的应用程序中实际拥有帐户的用户无关;相反,应用程序具有处理应用程序内用户权限的表。例如,在我的WordPress实例中,有一个MySQL用户帐户,WordPress使用该帐户与MySQL对话。在WordPress数据库中,有一个表,其中包含大约800个个人用户帐户的条目。所以我想说的是,您可能不需要为每个用户进行此更改
  • 通过将您的根帐户从%更改为localhost,我有点惊讶您没有被赶出phpMyAdmin。同样,我也有点惊讶,因为还没有两个根帐户
不管怎样,希望这能给你足够的信息,让你知道到底发生了什么。在进行更改之前,请始终记住进行备份。祝你好运