错误连接数据库,目标机器主动拒绝它

时间:2012-07-16 11:27:00

标签: php mysql database

我正在开发一个应用程序,其中连接了两个数据库表而不是第三个。 (这是在服务器上。它们在我的本地机器上工作正常。)

 1. Warning: mysql_connect() [function.mysql-connect]: [2002] No
    connection could be made because the target machine actively (trying
    to connect via tcp://localhost:3306) in D:\Hosting.. on line 5
 2. Warning: mysql_connect() [function.mysql-connect]: No connection could be made because the target machine actively refused it. in D:\Hosting.. on line 5

在早期阶段,我成功连接到同一个数据库中的两个表,因此我检查了数据库的每个表的物理位置。难怪所有人都在数据库中的同一个地方休息。

请帮我理解这个问题。

编辑:

//Page1 has something like:
$conid=mysql_connect("dxxs.db.7xx7.hostedresource.com","dxxs","Kxx3") or die();
mysql_select_db("dxxs",$conid) or die();
mysql_query(“some basic 4-5 queries depending on user’s interaction with table1”);
mysql_close($conid);
//redirection to page2 from there to page3
$conid=mysql_connect("dxxs.db.7xx7.hostedresource.com","dxxs","Kxx3") or die();
mysql_select_db("dxxs",$conid) or die();
mysql_query(“some basic 4-5 queries depending on user’s interaction with table2”);
mysql_close($conid);
//some redirection to page4
$conid=mysql_connect("dxxs.db.7xx7.hostedresource.com","dxxs","Kxx3") or die();
mysql_select_db("dxxs",$conid) or die();
mysql_query(“some basic 4-5 queries depending on user’s interaction with table3”);
mysql_close($conid);

现在我的问题是当连接到表3时,服务器正在抛出错误 如上所述

在第5行中,编写了MySQL_connect。请帮助我理解为什么表3没有连接,而表1和表1表2能够连接。所有这些都停留在服务器上的同一个数据库中。

2 个答案:

答案 0 :(得分:0)

听起来你正在为你正在使用的每个表调用一次mysql_connect()。您无需执行此操作 - 您只需要为正在使用的每个服务器连接一次。

服务器可能会限制您使用2个并发连接,这就是它拒绝第三个连接的原因。

尝试在脚本顶部调用mysql_connect()一次。

答案 1 :(得分:0)

我找到了问题并解决了它。尝试在hostname:PORT之后使用端口使用我的代码:

$dbh=@mysql_connect('dbxxxxxx.db.1and1.com:3306','db-username','db-password');
if (!$dbh) {
    $err_msg='Cannot connect to the database because: '.mysql_error();  
}