php连接mysql失败问题(localhost)

<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

// some code

?>

用php连接数据库,出现了经典问题,

Warning: mysqli_connect() [function.mysqli-connect]: [2002] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试 (trying to connect via tcp://localhost:3306) in D:\AppServ\www\project\file\readfile.php on line 10

Warning: mysqli_connect() [function.mysqli-connect]: (HY000/2002): 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。 in D:\AppServ\www\project\file\readfile.php on line 10
Could not connect:由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。


使用localhost默认是使用sock连接。使用127.0.0.1则是使用tcp来连接


解决方法:

1.改配置文件

2.另一种说法,改hosts文件

在途中,我们的localhost被注释掉了。因此在连接语句中

mysqli_real_connect($conn,"localhost","root","root","phpsql",3306,"test", MYSQLI_CLIENT_FOUND_ROWS);

程序找不到localhost所对应的地址,也因此连接不上。

 

3.改为tcp连接

参数改为127.0.0.1

 

涉及很多知识点,但为了php的学习进度,只大略的了解一下。


posted @ 2017-06-09 11:21  John_leaf  阅读(2243)  评论(0编辑  收藏  举报