3

我已经在我的 Windows Server 2008 R2 上安装了 xampp。我在那里运行一个脚本来存储我一天的数据。现在我想通过 mysql_connect("hostname","username","pw") 连接数据库从我自己的计算机或外部检索数据。经过一些研究,我被告知我必须表扬

> [...]
> #bind-address = 127.0.0.1
> #skip-networking 
  [...]

在 /etc/mysql/my.cnf

在 mysql 中没有找到 my.cf 文件,但在 xampp/mysql/bin/my.ini 中找到了一个。但是当我打开文件时,我发现这些行甚至被评论了所以没有改变任何东西......奇怪。

然后我被告知要创建一个主机设置为 % 的新用户。所以我做了。现在我试图在我的电脑(xampp)上访问数据库,但是当我想连接数据库时,我只是收到错误消息,即连接失败。错误在哪里?

谢谢

编辑:

这就是howi完全连接

$connection=mysql_connect("hostname","usrname","password")or die(mysql_error());
mysql_select_db("dbname")or die(mysql_error());

我得到的错误信息是德语,你可以翻译。

警告:mysql_connect(): Ein Verbindungsversuch ist fehlgeschlagen, da die Gegenstelle nach einer bestimmten Zeitspanne nicht Richtig reagiert hat, oder die hergestellte Verbindung war fehlerhaft, da der verbundene Host nicht reagiert hat。在第 4 行的 C:\xampp\htdocs\tickerdata\get.php

仅仅意味着连接失败,因为远程在特定时间段内没有反应或连接失败,因为主机没有反应......

4

1 回答 1

8

如果不能远程连接到服务器,但是可以本地连接,要么需要在防火墙中打开 3306 端口,要么从远程 IP 授予用户权限。

该端口应在 windows 防火墙以及路由器防火墙中打开。您的路由器需要将端口转发到 2008R2 服务器。

在 2008R2 防火墙中打开端口:

http://www.2x.com/blog/2010/04/tech/configuring-the-windows-server-2008-r2-firewall-to-open-ports-for-2x-solutions/

授予用户对 IP 的权限:

GRANT ALL ON foo.* TO bar@'255.255.255.255' IDENTIFIED BY 'PASSWORD';

请记住,在 MySQL 中可能有重复的用户名,如果您没有使用 UNIQUE 用户名创建新用户,那么您可能会获得被监禁到 localhost 的用户的权限

于 2013-01-30T14:41:16.870 回答