GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come abilitare il registro delle query lente per MySQL

In questo tutorial, ti mostreremo come abilitare un log di query lento per MySQL su sistemi Linux. MySQL ha funzionalità integrate che ti consentono di registrare le query SQL su un file, puoi abilitare i registri completi delle query SQL in un file o solo il registro delle query a esecuzione lenta.È facile per noi risolvere/eseguire il debug dell'istruzione SQL se il registro delle query SQL è abilitato, Il registro delle query lente viene utilizzato per trovare query che richiedono molto tempo per essere eseguite e sono quindi candidati per l'ottimizzazione. Assumiamo che tu abbia già installato MySQL sul sistema Linux con privilegi di amministratore e assumiamo che tu abbia già una piccola conoscenza di MySQL.

Questo articolo presuppone che tu abbia almeno una conoscenza di base di Linux, sappia come usare la shell e, soprattutto, che ospiti il ​​tuo sito sul tuo VPS. L'installazione è abbastanza semplice e presuppone che tu sono in esecuzione nell'account root, in caso contrario potrebbe essere necessario aggiungere 'sudo ' ai comandi per ottenere i privilegi di root. Ti mostrerò passo dopo passo l'abilitazione del registro delle query lente per MySQL.

Prerequisiti

  • Un server che esegue uno dei seguenti sistemi operativi:CentOS Linux.
  • Si consiglia di utilizzare una nuova installazione del sistema operativo per prevenire potenziali problemi.
  • Accesso SSH al server (o semplicemente apri Terminal se sei su un desktop).
  • Un non-root sudo user o accedere all'root user . Ti consigliamo di agire come non-root sudo user , tuttavia, poiché puoi danneggiare il tuo sistema se non stai attento quando agisci come root.

Abilita registro query lente per MySQL

Passaggio 1. Innanzitutto, iniziamo assicurandoci che il tuo sistema sia aggiornato.

sudo dnf clean all
sudo dnf update

Passaggio 2. Configura il server MySQL.

Ora modifichiamo il /etc/my.cnf file con il tuo editor di testo preferito.

nano /etc/my.cnf

Una volta che hai il tuo my.cnf file aperto, aggiungi la seguente riga sotto “[mysqld] sezione ".

[mysqld]
log-slow-queries
log-slow-queries= /var/log/mysql/slow-queries.log
long_query_time=5

Salva e chiudi il file, quindi crea il file slow-queries.log. Puoi avere il file in qualsiasi punto desideri, purché tu definisca il percorso nel tuo my.cnf .

touch /var/log/mysql/slow-queries.log
chown mysql.mysql /var/log/mysql/slow-queries.log

Infine, riavvia il servizio MySQL. Inserisci il seguente comando:

sudo systemctl restart mysql

Passaggio 3. Verifica la query del registro lento.

Una volta configurato correttamente. Verifica la presenza di “slow_query_log parametro ” (dovrebbe essere “ON”):

mysql> show variables like '%slow%';
+---------------------+--------------------------------+
| Variable_name       | Value                          |
+---------------------+--------------------------------+
| log_slow_queries    | ON                             |
| slow_launch_time    | 2                              |
| slow_query_log      | ON                             |
| slow_query_log_file | /var/lib/mysql/mysqld-slow.log |
+---------------------+--------------------------------+
4 rows in set (0.00 sec)

Successivamente, controlliamo il parametro “long_query_time ”, dovrebbe avere il tempo di 5 secondi:

mysql> show variables like '%long%';
+--------------------+----------+
| Variable_name      | Value    |
+--------------------+----------+
| long_query_time    | 5.000000 |
| max_long_data_size | 1048576  |
+--------------------+----------+
2 rows in set (0.00 sec)

Congratulazioni! Hai abilitato con successo un log di query lente su MySQL. Grazie per aver utilizzato questo tutorial per abilitare un log di query lente su MySQL nel sistema Linux. Per ulteriore aiuto o informazioni utili, ti consigliamo controlla il sito Web ufficiale di MySQL.


Cent OS
  1. CentOS / RHEL 7:come abilitare telnet per un gruppo di utenti

  2. Come abilitare la registrazione dettagliata per VSFTPD

  3. Come modificare la directory di registro predefinita (/var/log) in Rsyslog per CentOS/RHEL 6,7

  4. Come creare un repository Yum locale per i pacchetti MySQL Enterprise

  5. Come elencare e impostare il contesto SELinux per MySQL Server

Come abilitare Fail2Ban per Plesk 12

Come abilitare SSL e connessioni remote per MySQL su CentOS 7

Come abilitare HTTPS per Varnish Cache usando Hitch su CentOS-RHEL 8

Come accedere come root in MySQL?

Come abilitare CloudFlare CDN per il mio sito web?

Come creare un contenitore Docker MySQL per i test