新手求教连接不上数据库。外加一个PHP问题
程序员文章站
2024-01-30 15:34:52
...
才学的PHP,现在我测试连接数据库,但是一直连接不上,错误日志如下:
[28-Jun-2014 06:55:03 UTC] PHP Warning: mysql_connect(): Error while reading greeting packet. PID=2604 in D:\web\Apache Software Foundation\htdocs\jiaoyan.php on line 2
[28-Jun-2014 06:55:03 UTC] PHP Warning: mysql_connect(): MySQL server has gone away in D:\web\Apache Software Foundation\htdocs\jiaoyan.php on line 2
然后是测试代码:
$con=mysql_connect("127.0.0.1:3307","root","root");
if(!$con){
die('Could not connect: ' . mysql_error());
}else{
echo "yes";
}
?>
之前测试端口是有一次测出来3306被占用了,我就在SQL上吧TCP端口号改成3307,然后我也没看见数据库中有root的登录名,那个root是我自己创建的,现在一直是连接超时。网上说什么timeout设置大一点,什么发的东西太长,但是我这个什么都没法呀,就像看看能不能连接成功,我觉得应该不是那些问题,而且数据库的那两个服务我也开了的,现在不知道该怎么办了呀,求帮忙看看可能是哪的问题,怎么就连接不上数据库呢。
[28-Jun-2014 06:55:03 UTC] PHP Warning: mysql_connect(): Error while reading greeting packet. PID=2604 in D:\web\Apache Software Foundation\htdocs\jiaoyan.php on line 2
[28-Jun-2014 06:55:03 UTC] PHP Warning: mysql_connect(): MySQL server has gone away in D:\web\Apache Software Foundation\htdocs\jiaoyan.php on line 2
然后是测试代码:
$con=mysql_connect("127.0.0.1:3307","root","root");
if(!$con){
die('Could not connect: ' . mysql_error());
}else{
echo "yes";
}
?>
之前测试端口是有一次测出来3306被占用了,我就在SQL上吧TCP端口号改成3307,然后我也没看见数据库中有root的登录名,那个root是我自己创建的,现在一直是连接超时。网上说什么timeout设置大一点,什么发的东西太长,但是我这个什么都没法呀,就像看看能不能连接成功,我觉得应该不是那些问题,而且数据库的那两个服务我也开了的,现在不知道该怎么办了呀,求帮忙看看可能是哪的问题,怎么就连接不上数据库呢。
回复讨论(解决方案)
从日志信息上看,是 端口 3307 的 mysql 没有启动
其实你看 php 的出错信息比较好
$con=mysql_connect("127.0.0.1:3307","root","root") or die(mysql_error());
我在DOS下测试3307能联通呀,怎么算启动了端口,怎么启动
php的出错信息:Could not connect: MySQL server has gone away
请问一下楼主,最后是怎么解决的,我也是同样的错误提示