php5.4.8 连接mysql比php5.2.6要慢
点击 3774 创建时间 2012-11-16 15:43:27
笔者以同一个脚本对两个版本的php进行测试,笔记用的是windows7系统。
<?php
$a = microtime( true );
$conn = mysql_connect("localhost","root","123456");
mysql_select_db("yqr");
$q = mysql_query("show tables");
while( $r = mysql_fetch_assoc( $q ))
{
// print_r( $r );
}
echo microtime(true ) - $a; echo " seconds"; exit();
?>
php5.4.8 输出的结果是:
1.0138568878174 seconds
php 5.2.6 输出的结果是:
0.00234985351562 seconds
可见,php5.4.8访问mysql的速度比php5.2.6的要慢得多。开始用php5.4.8时,我以为是mysql变慢了,删除了日志,提升了mysql性能,还是没有见得变快,速度在1秒以上。后来,我切换到php5.2.6后,访问速度一下子降到0.002秒左右。看来不是mysql的问题,而是php的mysql扩展的问题。如有升级到php5.4.8的朋友要注意一下了。
老夫去php.net问了高手,网址是:https://bugs.php.net/bug.php?id=63525&thanks=2 ,高手的回答是,简单的解决办法是把localhost
替换成127.0.0.1
。我照做了,速度一下子快多了。他说是因为windows7把localhost
当做ipv6
来解析,而mysql又不在::127
处监听。
//注意这里的127.0.0.1,不要再写成localhost了。
$conn = mysql_connect("127.0.0.1","root","123456");
connect to mysql take 0.0034029483795166 seconds
上一篇: gnustep:object-c继承
下一篇: ecshop二次开发添加购买参数的方法