Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak wyświetlić czas wykonania zapytania MySQL w PHP?

To zadziałało jak urok!

    $db->query('set profiling=1'); //optional if profiling is already enabled
    $db->query($_POST['query']);
    $stmt = $db->query('show profiles');
    $db->query('set profiling=0'); //optional as well

    $records = $stmt->fetchAll(PDO::FETCH_ASSOC);

    $errmsg = $stmt->errorInfo()[2]; //Output the error message 

AKTUALIZACJA (Teraz działa innodb w mojej obecnej konfiguracji)

$db->query('set profiling=1'); //optional if profiling is already enabled
$db->query($_POST['query']);
$res = $db->query('show profiles');
$records = $res->fetchAll(PDO::FETCH_ASSOC);
$duration = $records[0]['Duration'];  // get the first record [0] and the Duration column ['Duration'] from the first record

Wynik (pokaż profile) od phpmyadmina.

Query_ID    Duration    Query   
1           0.00010575  SELECT DATABASE()

Uzyskiwanie rzeczywistego (bezwzględnego) czasu wykonania ostatniego zapytania w PHP (z wyłączeniem opóźnień sieciowych itp.)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Alias ​​MySQL dla kolumn SELECT *

  2. SQL — Połącz dwie tabele o różnej wartości daty

  3. MySQL:NULL vs

  4. PHP:brak pliku php.ini

  5. Powszechny błąd MySQL:„Wystąpił błąd odczytu pakietu komunikacyjnego”