GoDaddy Aiuto

Abbiamo cercato di tradurti questa pagina. È disponibile anche la versione in inglese.

Rivedi le query MySQL lente

Hai abilitato la registrazione lenta delle query e ora hai un registro da rivedere. Se non hai abilitato la registrazione, puoi trovare i passaggi qui .

Analizzando il registro

Posizione del registro:
/var/log/slow-queries.log
NOTA: se non trovi un registro in questa posizione, verifica la voce in my.cnf e che MySQL sia stato riavviato dopo aver apportato la modifica.
Formato:
# Time: 210905 6:33:11 # User @ Host: dbuser [dbname] @ hostname [1.2.3.4] # Query_time: 12.116250 Lock_time: 0.000035 Rows_sent: 0 Rows_examined: 201565 use dbname; IMPOSTA timestamp = 1409898791; ... QUERY LENTA ...

Il registro può essere travolgente quando hai dozzine se non centinaia di voci nel formato sopra. Per rendere il log più leggibile, usa mysqldumpslow per analizzarlo.

mysqldumpslow -r -a /var/log/mysql/mysqld.slow.log
L'output conterrà informazioni importanti come l' ora , le righe e la query .
Conteggio: 2 Tempo = 20,54 s (41 s) Blocco = 0,02 s (0 s) Righe = 12547802 (0), dbuser [dbuser] @localhost SELEZIONA * DA db_exp_table WHERE site_user_id = '214380' ORDINA PER site_id LIMITE DESC 0,2 Conteggio: 1 Tempo = 21,74 s (21 s) Blocco = 0,01 s (0 s) Righe = 12547802 (0), dbuser [dbuser] @localhost SELEZIONA * DA db_exp_table WHERE site_user_id = '214380' ORDINA PER site_id LIMITE DISCESA 0,2 Conteggio: 1 volta = 23,86 s (23 s) Blocco = 0,20 s (0) Righe = 12547802 (0), dbuser [dbuser] @localhost SELEZIONA * DA db_exp_table WHERE site_user_id = '214380' ORDINA PER site_id LIMITE DESC 0,2

Osservando l'esempio sopra, abbiamo 1 query la cui esecuzione ha richiesto 20-24 secondi. Ciò causa problemi con il tuo sito che vanno da tempi di caricamento lenti a errori di timeout (rotazione senza fine). La query sta esaminando 12.547.802 righe. Una query di grandi dimensioni (ad es. Seleziona *) eseguita su una tabella con più di 12 milioni di righe potrebbe risultare in un'esperienza utente scadente. Ottimizzare la query (es. Selezionare "tavolini") o ridurre le righe esaminate (es. Archiviare i vecchi dati) velocizzerà la query.

Se il file di registro è di grandi dimensioni, esegui mysqldumpslow e salva l'output in un file. Questo renderà più facile la revisione con altri strumenti di manipolazione dei file come grep o find .

mysqldumpslow -r -a /var/log/slow-queries.log > slow.log.parsed

Passaggi successivi

Dopo aver esaminato il registro delle query lente, dovresti avere una buona idea delle query problematiche che devono essere risolte. Se il tuo sito è ancora lento con MySQL che utilizza risorse elevate, potrebbe essere necessario ottimizzare MySQL per utilizzare al meglio le risorse del server.

Una volta terminato con il registro, assicurati di disabilitare la registrazione lenta delle query MySQL . Lasciando la registrazione abilitata, le risorse MySQL saranno esaurite inutilmente e il disco verrà potenzialmente riempito (con query errate).

Servizi di hosting GoDaddy

I nostri esperti di server possono abilitare/disabilitare la registrazione lenta delle query MySQL e ottimizzare MySQL. Per saperne di più su questo servizio, le nostre guide GoDaddy sono qui per aiutarti.

Ulteriori informazioni

Per saperne di più sui servizi di hosting offerti da GoDaddy, consulta il nostroMenu dei Servizi di hosting .