本地系统Apache 2.2.14+PHP5.3.1+MySQL 5.0.22中,PHP5.3.1运行以下程序时无法连接MySQL 5.0.22
<?php
$link=mysql_connect("localhost","root","");
if(!$link) echo "失败!";
else echo "成功!";
mysql_close();
?>
出现以下错误:Warning: mysql_connect() [function.mysql-connect]: [2002] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试 (trying to connect via tcp://localhost:3306) in D:\Program Files\Apache Software Foundation\Apache2.2\htdocs\test3.php on line 2Warning: mysql_connect() [function.mysql-connect]: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。 in D:\Program Files\Apache Software Foundation\Apache2.2\htdocs\test3.php on line 2Fatal error: Maximum execution time of 60 seconds exceeded in D:\Program Files\Apache Software Foundation\Apache2.2\htdocs\test3.php on line 2
但在DOS命令行下:
mysql -u root 
能连接,请教大家,为什么啊?如何解决啊?谢谢

解决方案 »

  1.   

    你确定你的APCHE是运行状态吗
      

  2.   

    确定是正确的啊!
    我在IE中输入 http://localhost/test2.php
    <html>
    <body>
    <?php
    $Var1=10;
    $Var2=&$Var1;
    $Var2++;
    echo "$Var2<p>";
    ?>
    </body>
    </html>它的运行结果是正确的:11
      

  3.   

    用127.0.0.1试试
    localhost是默认对127.0.0.1的,看看hosts里面是否有这条记录
    命令行下mysql -hlocalhost -uroot看看
      

  4.   

    解决了,将程序中localhost改成127.0.0.1,如下:
    <?php 
    $link=mysql_connect("127.0.0.1","root",""); 
    if(!$link) echo "失败!"; 
    else echo "成功!"; 
    mysql_close(); 
    ?> 
    就行了,谢谢啊各位
      

  5.   

    hosts文件在Windows Vista中的什么位置(文件夹)啊?谢谢