<?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的學習進度,只大略的了解一下。