![](/img/trans.png)
[英]Execution time of a mysql query, slow in php than phpmyadmin . How I can overcome this
[英]PHP: Slow query execution
我有這個登錄系統:
require_once "conexion.php";
class login extends conexion {
public function log_user($user,$pass)
{
$conexion = mysql_conexion();
$login = "SELECT user_name,user_pass,id FROM menssager_user WHERE user_name='$user' AND user_pass='$pass'";
$e = $conexion->prepare($login);
$e->execute();
$re = $e->fetch(PDO::FETCH_ASSOC);
if($user == $re["user_name"] && $pass == $re["user_pass"])
{
$this->is_online($re["id"]);
return $re["id"];
}
$conexion = null;
} }
當我執行該代碼時,需要1.3秒來找出該用戶是否存在,並且我在數據庫中只有2個用戶名。 有人可以告訴我為什么這么慢嗎? 注意:昨天我升級到5.4.7,然后再次重新編寫代碼(針對該版本的新功能)。
更新:
與數據庫共存:
class conexion{
public function mysql_conexion(){
$conexion_path = "mysql:dbname=menssager;host:127.0.0.1";
$root = "root";
$pass = "";
try{
$conectar = new PDO($conexion_path,$root,$pass);
$conectar->setAttribute(PDO::ATTR_EMULATE_PREPARES,false);
$conectar->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch(PDOException $error)
{
echo $conectar = $error->getMessage();
}
return $conectar;
}
}
當您仍在測量連接與執行時間時,我會冒險猜測答案。 我認為您的連接時間是造成延遲的原因。 看看前面問過的類似問題。 https://serverfault.com/questions/408550/connecting-to-mysql-from-php-is-extremely-slow
關閉反向DNS查找可能會對您有所幫助。 添加顯示如何將其關閉的鏈接:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.