为什么我无法通过PHP连接到远程MySQL服务器?

问题描述:

我已阅读了几篇针对我的完全相同问题的文章,但没有一篇我读过的答案对我有用。为什么我无法通过PHP连接到远程MySQL服务器?

我想我的网络,我使用下面的命令创建了访问数据库:

$con=mysqli_connect("1.2.3.4","user","pass","db_name"); 

所有数据的查询是正确的,但我得到的错误:

Warning: mysqli_connect(): (HY000/1130): Host '4.3.2.1' is not allowed to connect to this MySQL server in C:\xampp\htdocs\ajax_refresh.php on line 4 

第4行是上面的$con声明。

我已经去到MySQL的外壳和键入:

# mysql -u user -p -h 1.2.3.4 

,并将其连接就好了。我还通过我在Excel中编写的连接和加载数据的应用程序访问了此远程计算机上的数据库,因此我知道我的计算机具有对服务器的正确访问权限。

我也在这里添加的部分进入我的httpd-xampp.conf文件:

Alias /phpmyadmin "C:/xampp/phpMyAdmin/" 
    <Directory "C:/xampp/phpMyAdmin"> 
     AllowOverride AuthConfig 
    Allow from all   
    Require all granted 
    </Directory> 

允许从外部访问,并在创建该用户'user'@'1.2.3.4'对此我的用户名和IP地址匹配连接。

我在做什么错?

+0

所以我的第一行:'我已经通过在这里的几个职位面向我完全一样的问题看,但没有我的答案我已经阅读了我在这里找到的解决方案,但他们没有工作。但你可以将它标记为重复,而我猜....... – lordterrin 2014-12-01 21:35:25

MySQL不允许比从本地主机其他连接连接到它

+0

错误。这是不正确的。你需要逐字遵循这个指令:http://www.rackspace.com/knowledge_center/article/mysql-connect-to-your-database-remotely我已经做了这10次,我成功地能够连接到远程并置mysql数据库从我的本地主机或任​​何主机。你需要确保你用mysql的所有命令发出连接到mysql的传入IP地址。它的一个mysql安全功能不仅仅是任何人都可以连接到数据库。 – unixmiah 2014-12-01 21:39:37

+0

当然它确实 - 我已经通过Excel宏远程访问了服务器,正如我在原始文章中所述。 – lordterrin 2014-12-01 21:40:06

+0

这是你的问题:主机'4.3.2.1'不允许连接,你必须进入mysql数据库mysql并用ip地址更新用户和db表。确保你在之后刷新权限。 – unixmiah 2014-12-01 21:41:54