2011-12-19 47 views
0

当我在本地开发环境中运行以下页面时,出现TCP连接超时错误。我最近从另一个开发者那里继承了这个网站。我已将服务器上的所有文件全部拖放到运行Lion的MacBook Pro上的/Users/mycomputer/Sites/testsite.com文件夹中。无法在本地PHP测试环境中建立MySQL数据库连接

我跑(显然我已经消毒的代码,在这里发帖)代码:

<?php 
mysql_connect("mysqldb", "usernamehere", "passwordhere") or die(mysql_error()); 
echo "Connected to MySQL<br />"; 
mysql_select_db("test") or die(mysql_error()); 
echo "Connected to Database"; 
?> 

和错误:

Warning: mysql_connect() [function.mysql-connect]: [2002] Operation timed out (trying to connect via tcp://mysqldb:3306) in /Users/mycomputer/Sites/testsite.com/dbtest.php on line 2 
Warning: mysql_connect() [function.mysql-connect]: Operation timed out in /Users/mycomputer/Sites/testsite.com/dbtest.php on line 2 
Operation timed out 

在哪里我已经错了任何想法?我在PHP世界非常不熟练,所以请原谅我的无知。如果这是ColdFusion,我会怀疑数据源问题。

+1

你在你的机器上运行MySQL数据库服务器吗? – hakre 2011-12-19 18:47:27

+0

“mysqldb”是否具有消毒价值?如果你在本地做所有可能是“本地主机”的东西。 – nachito 2011-12-19 18:48:20

+0

“mysqldb”是一个已消毒的值,但它非常接近原始值。原来没有呼叫一个IP地址或类似的东西。 – Ofeargall 2011-12-19 18:50:31

回答

2

首先,您需要检查您的网站是否允许外部IP连接到数据库。如果他们这样做,您可能需要将当前IP添加到允许的IP列表中。

然后,您需要使用外部数据库地址连接到数据库。如果你做得正确,这应该起作用。您的错误显示它无法连接到数据库。

+0

我刚刚被通知他们不允许外部访问mysql数据库。 – Ofeargall 2011-12-19 19:13:47

+0

为了跟进,我从生产服务器中导出了mysql数据库,并在我的本地环境中重新创建了它。到数据库的连接现在在本地环境中工作。 – Ofeargall 2011-12-22 00:23:20

相关问题