程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> php5.4.8 連接mysql比php5.2.6要慢

php5.4.8 連接mysql比php5.2.6要慢

編輯:MySQL綜合教程

筆者以同一個腳本對兩個版本的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處監聽。

connect to mysql take 0.0034029483795166 seconds

$conn = mysql_connect("127.0.0.1","root","123456"); //注意這裡的127.0.0.1,不要再寫成localhost了。
 

原文地址:http://wudimei.com/yangqingrong/blog/show/133

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved