Attivare slow query log di MySQL
en:Enable slow queries MySQL logs
fr:Activer les logs de requêtes lentes MySQL
Il presente articolo è stato tradotto tramite un software di traduzione automatica. È possibile visualizzare l'origine articolo qui.
Introduzione | _. _. Ricevere gli avvisi dal monitoraggio sulle query mysql lento | _. _. Slow query | _. _. Questi errori sono prodotte quando in esecuzione di una query MySQL supera il tempo assegnato, definito dalla variabile MySQL | _. _. Un altro motivo può essere collegato all'utilizzo di MySQL da un servizio esterno | _. _. nel caso di un sito Web, ad esempio, cattiva programmazione incorporando non collegamenti vicini di auto a MySQL può riempire il buffer, rendendo le query più in esecuzione. | _. _. . Questi errori possono essere prodotte da diversi fattori, vediamo qui come attivare i registri per questi errori al fine di analizzare e correggerli.
Luogo: _! _ | Per favore nota che attivano i log delle query lente può rallentare il tuo | _. _. dato che le voci saranno allo stesso tempo come l'esecuzione di query lenta. (Verificare che i registri non sono già attivi | _. _. Per garantire che i log delle query lente non sono già accesi, connettersi in SSH al computer e inserire la shell di MySQL | _. _. Una volta nella shell di MySQL, immettere il seguente comando per ottenere l'elenco di tutte le variabili e i valori relativi insiemi | _. _. Navigare per visualizzare la variabile nella colonna sinistra | _. _. | _. _. su: _! _ | Si ', i registri sono attivi. Il: _! _ | OFF', dobbiamo accenderli. ) : Abilitare e configurare il registro di query lente | _. _. Sempre nella shell di MySQL, immettere il seguente comando: _! _ | È inoltre possibile impostare un percorso per la directory dove verranno archiviati i registri di query lenta | _. _. Infine, impostare un tempo minimo allocato a ciascuna richiesta per assicurarsi che non avete falsi positivi di query lente | _. _. secondi è un valore corretto | _. _. secondi è consigliato se accade che il | _. _. indebolire a fronte del numero di query e visitatori | _. _. Questa variabile è definita in base a | _. _. secondi | _. _. Infine, verificare che modifiche sono state prese in considerazione con il seguente comando: _! _ | Analizzare i log | _. _. Nel caso di monitoraggio degli avvisi che ti dice che le query sono scritte come lento, è ora possibile analizzare i registri di slow_queries al fine di comprendere il motivo per questi ritardi | _. _. Spiegazione del fenomeno | _. _. Come spiegato all'inizio di questa forma, le query lente sono dedfinie con il tempo di esecuzione di query definite | _. _. Se la query richiede più a lungo termine fissato dal da eseguire, è definito come querie lento. La prima ragione di ottenere query con esecuzione prolungata può essere cattiva l'impostazione della variabile MySQL | _. _. long_query_time | _. _. un tempo massimo troppo basso può mettere alcune query pesanti direttamente in lento mentre sono in realtà abbastanza normale. long_query_timeUna configurazione errata del database può anche essere la causa del fenomeno | _. _. join di tabelle e le marcature | _. _. chiave | _. _. possono generare questi errori: _! _ | ad esempio nel caso di una tabella senza una chiave primaria.
Infine, non dovremmo escludere l'ipotesi di un attacco il tuo | _. _. generando molte query che sarà alla fine mucchio alto e così superare il limite definito dal tempo di esecuzione di long_query_time.
e: _! _ | I registri sono ora attivi e dovrebbero permettere di analizzare meglio lente azioni sul database, consente di diagnosticare i problemi di prestazioni, programmazione o attacchi mirati. Inoltre, ora avete una visuale migliore sulle azioni eseguite sul vostro | _. _. database. ServerQuesto articolo sembra utile a voi
==
mysql -u utilisateur -p
[mot de passe]
:
show variables;
"slow_query_log" : ' '
==
:
set global slow_query_log = 'ON';
:
set global slow_query_log_file ='/var/log/mysql/slow-query.log';
: 10 20 Server ( 10 ) :
set global long_query_time = '20';
:
show variables like '%slow%';
==
:
# montrera les requêtes en temps réel
tail -f /var/log/mysql/slow-query.log # défini dans notre exemple ci-dessus
# sortie complète du fichier
cat /var/log/mysql/slow-query.log
# naviguer de haut en bas
less /var/log/mysql/slow-query.log
==
; "long_query_time" ;
;
: () -
Server
Conclusion
Server
?

Attivare l'aggiornamento automatico dei commenti