本地系统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();
?>
出现以下连接错误,而
<?php
$link=mysql_connect("127.0.0.1","root","");
if(!$link) echo "失败!";
else echo "成功!";
mysql_close();
?>
却连接成功,为什么么呢?系统的hosts文件中有:
127.0.0.1 localhost 这一条的
<?php
$link=mysql_connect("localhost","root","");
if(!$link) echo "失败!";
else echo "成功!";
mysql_close();
?>
出现以下连接错误,而
<?php
$link=mysql_connect("127.0.0.1","root","");
if(!$link) echo "失败!";
else echo "成功!";
mysql_close();
?>
却连接成功,为什么么呢?系统的hosts文件中有:
127.0.0.1 localhost 这一条的
IE的地址栏中输入:http://localhost/test.php或http://127.0.0.1/test.php都能正常执行
D:\mysql -h localhost -u root -p
或
d:\mysql -h 127.0.0.1 -u root -p都能进入mysql系统
mysql server 认为该连接来自于127.0.0.1或者是"localhost.localdomain"
mysql -h localhost 的时候,是不使用TCP/IP连接的,而使用Unix socket;
此时,mysql server则认为该client是来自"localhost"
The password. Default value is defined by mysql.default_password. In SQL safe mode, this parameter is ignored and empty password is used. $link=mysql_connect("localhost","root"); //这样试试
在[C:\WINDOWS\system32\drivers\etc] 路径中修改127.0.0.1 localhost