C'è un modo per ottenere il tempo di esecuzione dell'ultima query eseguita in mysql?tempo di esecuzione mysql
risposta
mysql ha un builtin profiler. È possibile abilitare la creazione del profilo emettendo set profiling=1;
e utilizzare show profiles;
per ottenere i tempi di esecuzione.
se si utilizza PHP .. è possibile utilizzare microtime() prima della query e dopo la query per capire quanto tempo è necessario per la query da eseguire.
$sql_query='SELECT * FROM table';
$msc=microtime(true);
$mysql_query($sql_query);
$msc=microtime(true)-$msc;
echo $msc.' seconds'; // in seconds
echo ($msc*1000).' milliseconds'; // in millseconds
Questo non ti dice quanto tempo ha preso MySQL per eseguire la query. Ti dice quanto tempo è occorso a PHP per inviare la richiesta, attendere che fosse ricevuta e ricevere il risultato. Sarà rallentato da qualsiasi cosa possa essere in esecuzione sul client PHP e se c'è una latenza tra il client PHP e il server MySQL, i risultati saranno ulteriormente imprecisi. –
Ottengo risultati strani da questo, a volte riporta '2.15 s' per 8000 righe, altre volte '1.503.023.491.52 s' per 6000 righe. Se applico 'number_format ($ msc, 2)' allora ottengo risultati di eventi estranei come numeri negativi. – Slam
Prova questo ...
mysql_query("SET profiling = 1;");
if (mysql_errno()) { die("ERROR ".mysql_errno($link) . ": " . mysql_error($link)); }
/* It goes without saying that this is your actual query that you want to measure the execution time of */
$query="SELECT some_field_name FROM some_table_name";
$result = mysql_query($query);
if (mysql_errno()) { die("ERROR ".mysql_errno($link) . ": " . mysql_error($link)); }
$exec_time_result=mysql_query("SELECT query_id, SUM(duration) FROM information_schema.profiling GROUP BY query_id ORDER BY query_id DESC LIMIT 1;");
if (mysql_errno()) { die("ERROR ".mysql_errno($link) . ": " . mysql_error($link)); }
$exec_time_row = mysql_fetch_array($exec_time_result);
echo "<p>Query executed in ".$exec_time_row[1].' seconds';
Questo viene etichettato come una domanda MySQL. Non tutti quelli che usano MySQL usano PHP. –
- 1. mysql comando riga tempo di esecuzione ritorno?
- 2. Postgres Query tempo di esecuzione
- 3. Ottenere un tempo preciso di esecuzione di una dichiarazione MySQL
- 4. Imposta il tempo massimo di esecuzione in MYSQL/PHP
- 5. Tempo medio di esecuzione
- 6. "vero" tempo di esecuzione limite
- 7. Stampa Tempo di esecuzione dell'obiettivo di formica
- 8. drupal tempo massimo di esecuzione di cron
- 9. Registrazione del metodo di tempo di esecuzione
- 10. Tempo di esecuzione codice di misurazione
- 11. tempo di esecuzione nell'ambiente di multithreading
- 12. Tempo autore vs tempo di esecuzione in JavaScript
- 13. Tempo di esecuzione massimo di 30 secondi superato
- 14. Tempo trascorso programma in esecuzione
- 15. Controllo del tempo di esecuzione nell'intelligence IDEA
- 16. Tempo di esecuzione della CPU in Java
- 17. Android: simula il lungo tempo di esecuzione
- 18. Tempo di esecuzione codice misura C (Linux)
- 19. Tempo di esecuzione con Notazione grande 01
- 20. Hash Collision Linear Probing Tempo di esecuzione
- 21. C# 2.0 Timer tempo di esecuzione
- 22. inserimento lista concatenata tempo di esecuzione confusione
- 23. C# Passo Generics a tempo di esecuzione
- 24. proprietà aggiornamento file java tempo di esecuzione
- 25. Tempo di esecuzione massimo per JavaScript
- 26. gestione errori massima tempo di esecuzione
- 27. tempo di esecuzione della query mysql - posso ottenere questo in millisecondi?
- 28. In ogni caso per limitare la query MySQL Tempo di esecuzione?
- 29. Per ottenere il tempo di esecuzione della query MYSQL nella query
- 30. Ordine di condizione di esecuzione in MySQL
e SHOW PROFILE; anche –
Questo è quello che cercavo grazie – mck89
[DEPRECATED !!] (http://dev.mysql.com/doc/refman/5.6/en/performance-schema.html) – bobobobo