Mysql
 sql >> Base de données >  >> RDS >> Mysql

MySQL prend pour toujours "l'envoi de données". Requête simple, beaucoup de données

Pourquoi ne pas profiler une requête et voir exactement ce qui se passe ?

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 */;

Je pense que cela vous aidera à voir exactement où la requête prend du temps et en fonction du résultat, vous pouvez effectuer des opérations d'optimisation.