2015-02-07 74 views
1

我一直在寻找一个正确的答案,没有运气的解决方案。我的本地主机上有WampServer和phpMyAdmin。我在远程服务器上用phpmyadmin创建了一个拥有所有权限的用户。连接本地phpMyAdmin与远程服务器 - 错误#2002

    文件夹WAMP /应用/ phpmyadmin4.1.14 /我已经找到config.inc.php文件

并试图将其与下面的代码连接到远程数据库:

<?php 
$i++; 
/* Authentication type */ 
$cfg['Servers'][$i]['verbose'] = 'mysql wampserver'; 
//$cfg['Servers'][$i]['auth_type'] = 'cookie'; 
$cfg['Servers'][$i]['auth_type'] = 'config'; 
$cfg['Servers'][$i]['user'] = 'root'; 
$cfg['Servers'][$i]['password'] = ''; 
/* Server parameters */ 
$cfg['Servers'][$i]['host'] = '127.0.0.1'; 
$cfg['Servers'][$i]['connect_type'] = 'tcp'; 
$cfg['Servers'][$i]['compress'] = false; 
/* Select mysql if your server does not have mysqli */ 
$cfg['Servers'][$i]['extension'] = 'mysqli'; 
$cfg['Servers'][$i]['AllowNoPassword'] = true; 

$i++; 
/* Authentication type */ 
//$cfg['Servers'][$i]['auth_type'] = 'cookie'; 
$cfg['Servers'][$i]['auth_type'] = 'config'; 
$cfg['Servers'][$i]['user'] = 'username'; 
$cfg['Servers'][$i]['password'] = 'mypass'; 
/* Server parameters */ 
$cfg['Servers'][$i]['host'] = 'example.com'; 
$cfg['Servers'][$i]['connect_type'] = 'tcp'; 
$cfg['Servers'][$i]['compress'] = false; 
/* Select mysql if your server does not have mysqli */ 
$cfg['Servers'][$i]['extension'] = 'mysqli'; 
$cfg['Servers'][$i]['AllowNoPassword'] = false; 
?> 

因此,现在我在phpMyAdmin中有第二台服务器,但是当我选择它时 - 弹出错误。 MySQL错误#2002看起来像这样:

2002 - 连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机未能响应。服务器没有响应(或本地服务器的套接字配置不正确)。

请帮我想念什么!

回答

0

你有2个连接列在那里,所以它会显示2个连接。

因此,对于你当前的配置中列出的第二个服务器尝试连接到“example.com”服务器,如果你试图连接到该服务器确保您已允许远程连接的建立,以及帐户权限也远程访问。

如果您不试图连接到“example.com”,请将这些行更改为您要连接到的远程主机。

$cfg['Servers'][$i]['user'] = 'username'; 
$cfg['Servers'][$i]['password'] = 'mypass'; 
/* Server parameters */ 
$cfg['Servers'][$i]['host'] = 'example.com'; 

您可能需要在添加端口以及

$cfg['Servers'][$i]['port'] = '3307'; // MySQL port 
+0

是 - 我想两个连接,一个为本地主机和一个对我的远程服务器。我已经在phpMyAdmin中为远程服务器(example.com)创建了一个拥有所有权限的用户,并且正在使用此用户名和密码。 那么,你认为这是用户名/密码和privilages的问题? 只是要补充,它是共享主机,我想连接 - 所以,成千上万的人成功做到了这一点:) – mpavlovic89 2015-02-07 10:17:43

+0

是的,这将是特权,因为phpmyadmin通过mysql连接,它需要正确的权限设置为远程访问。只要该帐户可以远程连接,那么这些帐户详细信息将与phpmyadmin一起使用。 – lukesUbuntu 2015-02-07 10:20:47

+0

没有运气 - 我已经在服务器上创建了一个拥有所有privilages的用户。 – mpavlovic89 2015-02-07 10:22:26

2

您从您的计算机和服务器之间的通信失败的痛苦。如果它是许可的,你不会得到一个死的请求,你会得到许可错误。

  • 确保您的域名可用(连接到地址并以某种方式得到答案);
  • 确保您的防火墙已打开正确的端口。这可能会非常棘手,因为您可以使用一个端口来输入服务器和另一个服务端口。确保您的防火墙规则的写入方式正确,以便您的机器可以使用外部端口来查找正确的内部服务。
  • 使用不正确的用户名和密码。当你解决这个#2002错误时,你会得到#1045访问被拒绝的错误。然后你就会知道你需要担心权限和授予IP访问权限。
  • 确保您的本地Wamp有可用于PhpMyAdmin建立连接的套接字。
  • 确保你的远程MySQL允许远程连接
相关问题