sql >> Databasteknik >  >> RDS >> Mysql

MySQL tar för evigt att "sända data". Enkel fråga, mycket data

Varför profilerar du inte en fråga och ser exakt vad som händer?

SET PROFILING = 1; 
SET profiling_history_size = 0; 
SET profiling_history_size = 15; 
/* Your query should be here */
SHOW PROFILES; 
SELECT state, ROUND(SUM(duration),5) AS `duration (summed) in sec` FROM information_schema.profiling WHERE query_id = 3 GROUP BY state ORDER BY `duration (summed) in sec` DESC; 
SET PROFILING = 0; 
EXPLAIN /* Your query again should appear here */;

Jag tror att detta kommer att hjälpa dig att se exakt var frågan tar tid och baserat på resultatet kan du utföra optimeringsoperationer.



  1. Hur ser Alter Table-syntaxen ut för att lägga till en DATETIME-kolumn?

  2. Oracle - Hur man skapar en skrivskyddad användare

  3. MySQL MAX_JOIN_SIZE fel

  4. mysql är en array i flera kolumner