前景提要
HDC调试需求开发(15万预算),能者速来!>>> 重新配置了一台服务器,准备进行替换, 原来的配置是Apache/2.4.7 (Win32) OpenSSL/1.0.1e PHP/5.4.23 libmysql - mysqlnd 5.0.10 - 20111026 现在的配置是 Apache/2.4.17 (Win32) PHP/5.4.45 libmysql - mysqlnd 5.0.10 - 20111026 版本更新了一下 作为从服务器测试的时候,读取远程数据库,很慢,5、6秒的样子,觉得不可思议,于是更换成本地数据库(设置了主从备份的) 并单独做了个页面进行测试,结果一样的是5、6秒的样子 开phpmyadmin进行查询,速度不慢,进mysql命令行查询,0秒(这个应该是理所当然的结果) 迷茫了……100多行的数据查询竟然花了5、6秒? (连接地址使用的localhost)
均使用的mysql库,求指点一下可能是什么地方出了问题。
更换为mysqli测试,竟然也是一样的5、6秒的样子……
我想可能还是什么地方我不清楚,因为phpmyadmin的查询速度也并不算慢(查看响应大约100多ms的样子)
只是我实在想不到在代码部分还会有什么需要注意的(网络上多见使用127.0.0.1的方式,更换这个也是不行的)
测试代码如下: require(ROOT.CLS_TIMER); $c=new timer(); $db=mysql_connect($var['dbhost'],$var['dbuser'],$var['dbpsw']) or die(); if(!$db){return 0;} mysql_select_db($var['DBNAME'],$db) or die();//echo('db enter here'); //mysql_query("SET NAMES 'UTF8'"); $sql='select * from `table1` '; $c->stop(); $v1=$c->spent(); $c->start(); //$rs=run_sql($sql); $rs=mysql_query($sql,$db); $c->stop(); $v2=$c->spent(); $c->start(); $rs=rs_2_array($rs); $c->stop(); $v3=$c->spent(); $data['rs']=$rs; $data['v1']=$v1;$data['v2']=$v2;$data['v3']=$v3; diehere($data); $db= mysqli_connect ($var['dbhost'],$var['dbuser'],$var['dbpsw'],$var['dbname'])or die(); //$db=mysql_connect() // if(!$db){return 0;} //mysql_select_db(constant('DBNAME'),$db) or die();//echo('db enter here'); //mysqli_query($db,"SET NAMES 'UTF8'"); $sql='select * from `table1` '; $c->stop(); $v1=$c->spent(); $c->start(); //$rs=run_sql($sql); //$rs=mysql_query($sql,$db); $rs=mysqli_query($db,$sql); $c->stop(); $v2=$c->spent(); $c->start(); //$rs=rs_2_array($rs); $c->stop(); $v3=$c->spent(); //$data['rs']=$rs; $data['v1']=$v1;$data['v2']=$v2;$data['v3']=$v3; diehere($data); 是吧?上面的查询代码如此之简单直接,所以我就迷糊了……
用时间查看的话过程就在mysql(i)_query这条语句执行的时候慢得令人发指…………5、6秒的速度……
求大神指点一二!