在同一网络上访问外部phpmyadmin

时间:2014-03-03 21:11:44

标签: mysqli phpmyadmin virtualbox windows-server-2008-r2

我在Windows 2008 R2服务器上运行的网上商店可以在同一网络中的客户端PC上访问。 它工作正常,但现在我需要从另一台Windows 2008服务器获取数据库,而不是在同一台机器上运行它。

我已经在新服务器上安装了WAMP,将数据库导入phpmyadmin并打开防火墙端口80。在我的网店连接文件中,我已将主机更改为“192.168.0.17:80”(数据库服务器的IP地址)。

我仍然可以连接到商店并使用任何不使用数据库的东西,但是当我确实需要数据库时,它会加载一段时间并显示超时错误。

从Webhost服务器ping数据库。 我错过了什么吗?

编辑: 我现在可以通过“192.168.0.17/phpmyadmin”从Web服务器访问PHPMyAdmin。 我需要在PHP文件中输入什么才能将其连接到数据库?

1 个答案:

答案 0 :(得分:1)

如果您有phpMyAdmin并且网络服务器运行在192.168.0.17上,而数据库运行在192.168.0.20上,那么需要做两件事来允许phpMyAdmin访问数据库。

  1. MySQL需要允许用户从其他计算机连接。默认情况下,这通常是允许的;我不太确定WAMP会有什么变化。如果您使用主机“localhost”创建了用户,则它们将无法工作,您需要通过修改主机或创建新的类似用户来增加其权限。通常的免责声明适用于首先备份。
  2. phpMyAdmin需要配置为查看新的MySQL服务器而不是localhost。打开config.inc.php并修改或更改$cfg['Servers'][$i]['host']...行,以阅读$cfg['Servers'][$i]['host'] = '192.168.0.20';
  3. 完成后,您可以在您的网络服务器上打开phpMyAdmin,它现在应该尝试连接到现在安装了MySQL服务器的其他服务器。

      

    我已经在新服务器上安装了WAMP,导入了数据库   进入phpmyadmin并打开防火墙端口80。在我的联系中   网店的文件我把主机更改为“192.168.0.17:80”(IP   数据库服务器的地址。)

    我不确定这意味着什么。你的网络应用程序(我认为你的意思是“网上商店”)确实需要知道新数据库的位置,但是端口80用于网络流量,而不是MySQL连接(默认情况下是端口3306)。

    再说一点: 在标题中你提到“外部phpmyadmin”,但在网络的情况下,你所描述的“外部”通常意味着“在本地网络之外”(这通常意味着“在互联网上的任何地方”);我认为你的意思是同一网络上的另一台机器,它将在你的网络内部。

    修改 我意识到我对你的问题比我想象的更困惑,因为你写了

      

    编辑:我现在可以通过Web服务器访问PHPMyAdmin   “192.168.0.17/phpmyadmin”。

    哪个没有意义。我以为你有两台服务器,网络服务器(运行你的web应用程序和phpMyAdmin)和数据库服务器。我开始怀疑网络服务器实际上是192.168.0.17,在这种情况下你已经正确配置了你的phpMyAdmin来访问新的MySQL服务器,所以你所要做的就是将你的web应用程序更新到正确的IP地址(没有港口!);只需匹配phpMyAdmin config.inc.php中的内容即可。因此,您需要使用phpMyAdmin用于连接的相同主机名或IP地址,而不是192.168.17:80作为Web应用程序中的主机。您可以在主页面上以及“数据库服务器”部分找到它。