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

Come abilitare il log delle query lente in MySQL

Questo articolo descrive come abilitare il log delle query lente di MySQL. Puoi utilizzare il registro delle query lente per determinare quali query del database richiedono molto tempo per essere eseguite.

Questo articolo si applica solo ai prodotti elencati nei Dettagli articolo barra laterale. È necessario disporre dell'accesso come root al server per seguire queste procedure. Se disponi di un Managed VPS o di un Managed Dedicated Server (e non disponi dell'accesso come root) e desideri abilitare il registro delle query lente, apri un ticket sul Portale clienti all'indirizzo https://my.a2hosting.com.

Abilitazione del log delle query lente

Le query lente possono influire sulle prestazioni del database e sulle prestazioni complessive del server. La funzionalità di registro delle query lente in MySQL consente di registrare le query che superano un limite di tempo predefinito. Ciò semplifica notevolmente il compito di trovare query inefficienti o che richiedono tempo.

Per abilitare il log delle query lente in MySQL, segui questi passaggi:

  1. Accedi al tuo server utilizzando SSH.
  2. Alla riga di comando, digita il seguente comando:
    mysql -u root -p
  3. Digita la password di root MySQL.
  4. Per abilitare il log delle query lente, digita il seguente comando al prompt mysql>:

    SET GLOBAL slow_query_log = 'ON';
  5. Sono disponibili ulteriori opzioni che puoi impostare per il registro delle query lente:

    • Per impostazione predefinita, quando il registro delle query lente è abilitato, registra tutte le query che richiedono più di 10 secondi per essere eseguite. Per modificare questo intervallo, digita il comando seguente, sostituendo X con il tempo in secondi:
      SET GLOBAL long_query_time = X;
    • Per impostazione predefinita, il file di registro della query lenta si trova in /var/lib/mysql/hostname-slow.log . Per modificare il percorso del registro o il nome del file, digita il comando seguente, sostituendo percorso con il percorso del file e nomefile con il nome del nome del file di registro:

      SET GLOBAL slow_query_log_file = '/path/filename';
  6. Per verificare che il registro delle query lente funzioni correttamente, disconnettersi da mysql programma, quindi accedere nuovamente. (Questo ricarica le variabili di sessione per mysql programma.) Digitare il comando seguente, sostituendo X con un valore maggiore di long_query_time collocamento:

    SELECT SLEEP(X);

    Il file di registro della query lenta dovrebbe contenere informazioni sulla query.

  7. Continua a monitorare il file di registro delle query lente per vedere quali query richiedono molto tempo per essere eseguite.
  8. Al termine della risoluzione dei problemi, disabilitare il registro delle query lente. Per fare ciò, esegui mysql programma di nuovo, quindi digitare il comando seguente:

    SET GLOBAL slow_query_log = 'OFF';
    Dovresti abilitare il log delle query lente solo per il tempo necessario per risolvere i problemi di prestazioni.

Maggiori informazioni

Per ulteriori informazioni sul log delle query lente MySQL, visitare https://dev.mysql.com/doc/refman/5.5/en/slow-query-log.html.