我在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文件中输入什么才能将其连接到数据库?
答案 0 :(得分:1)
如果您有phpMyAdmin并且网络服务器运行在192.168.0.17上,而数据库运行在192.168.0.20上,那么需要做两件事来允许phpMyAdmin访问数据库。
config.inc.php
并修改或更改$cfg['Servers'][$i]['host']...
行,以阅读$cfg['Servers'][$i]['host'] = '192.168.0.20';
完成后,您可以在您的网络服务器上打开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应用程序中的主机。您可以在主页面上以及“数据库服务器”部分找到它。