sql >> Databáze >  >> RDS >> Mysql

MySQL bere věčné „odesílání dat“. Jednoduchý dotaz, spousta dat

Proč si nevyprofilujete dotaz a nezjistíte, co se přesně děje?

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

Myslím, že vám to pomůže zjistit, kde přesně dotaz zabere čas, a na základě výsledku můžete provádět optimalizační operace.



  1. Nastavení časového limitu pro SQL Server

  2. Jak získat velikost blob v PHP nebo SQL

  3. MySQL boolean - převrácení hodnoty?

  4. Odečíst měsíce od aktuálního data sql