我已经在windows server 2008 R2上安装了xampp。我在那里运行一个脚本,为我存储一天的数据。现在我想通过mysql_connect("主机名","用户名","pw")连接数据库,从我自己的计算机或外部检索数据。经过一番调查,我被告知我必须推荐
> [...]
> #bind-address = 127.0.0.1
> #skip-networking
[...]
在/etc/mysql/my.cnf 没有找到我的。Cf文件在mysql,但发现一个在xampp/mysql/bin/my.ini。但是当我打开文件时,我发现这些行甚至被注释了,所以没有改变任何东西.....奇怪。
然后我被告知创建一个主机设置为%的新用户。于是我照做了。现在我试图访问我的PC (xampp)上的数据库,但是当我想连接数据库时,我只是得到错误消息,即连接失败。错在哪里?
感谢编辑:就是这样连接的
$connection=mysql_connect("hostname","usrname","password")or die(mysql_error());
mysql_select_db("dbname")or die(mysql_error());
,我得到的错误信息是德语,你可以翻译。
警告:mysql_connect(): Ein verindungsversuch ist fehlgeschlagen, da die Gegenstelle nach einer bestimmten Zeitspanne nicht ht reagiert, der die hergestellte verindung war fehlerhaft, da der verbundene Host nicht reagiert。C:'xampp'htdocs'tickerdata'get.php on line 4
仅仅意味着连接失败,因为远程在一段时间内没有反应,或者连接失败,因为主机没有反应。
如果您不能远程连接到服务器,但可以本地连接,则需要在防火墙中打开端口3306,或者从远程IP授予用户权限。
该端口应在windows防火墙中打开,在路由器防火墙中也应打开。您的路由器需要将端口转发到2008R2服务器。
打开2008R2防火墙的端口:
http://www.2x.com/blog/2010/04/tech/configuring - - windows server 2008 r2 - - -防火墙- - - -开放港口——- 2 x - solutions/
在IP上授予用户权限:
GRANT ALL ON foo.* TO bar@'255.255.255.255' IDENTIFIED BY 'PASSWORD';
请记住,在MySQL中可能有重复的用户名,如果你没有用唯一的用户名创建新用户,那么你可能会获得被监禁到localhost的用户的特权