Mysql
 sql >> Database >  >> RDS >> Mysql

Prestazioni limite di MySQL

il problema con una tabella con 1 milione di record non sarà AND id > 34000 LIMIT 10 o LIMIT 34000, 10 che dipenderà dalla struttura e dal resto della query. Cioè, hai bisogno di index, PK, FK per accelerare la query, oltre a questo un ordine probabilmente lo rallenterà, fai la ricerca like '%text%' renderà la tua richiesta LENTA. Inoltre dipende dal motore del tavolo

Quindi non aspettarti che la modifica del limite 10 farà un'enorme differenza. Ci sono un paio di strumenti che ti aiuteranno a determinare una query "migliore", ma non tutte le query funzionano allo stesso modo, quindi non aspettarti la "soluzione migliore" perché non esiste.

Puoi usare Mostra create table o Describe select ...... o explain per vedere cosa sta succedendo, oppure usa il comando benchmark per vedere il tempo approssimativo di una funzione che stai applicando per migliorarla

MODIFICA:

Alcuni strumenti per MySQL Ti consiglio di dare un'occhiata a questo programma che ti aiuterà in questa parte delle prestazioni.

  • Mysqlslap (è come benchmark ma puoi personalizzare maggiormente il risultato).
  • SysBench (test prestazioni CPU, prestazioni I/O, conflitto mutex, velocità memoria, prestazioni database).
  • Mysqltuner (con questo puoi analizzare statistiche generali, Statistiche del motore di archiviazione, metriche delle prestazioni).
  • mk-query-profiler (esegue l'analisi di un'istruzione SQL).
  • mysqldumpslow (buono a sapersi che le query sulle streghe stanno causando problemi).