sql >> Database >  >> RDS >> Mysql

Hoe het langzame query-logboek in MySQL in te schakelen?

In dit artikel wordt beschreven hoe u het MySQL-logboek voor trage query's inschakelt. U kunt het logbestand voor trage zoekopdrachten gebruiken om te bepalen welke databasequery's lang duren om te worden uitgevoerd.

Dit artikel is alleen van toepassing op producten die worden vermeld in de Artikeldetails zijbalk. U moet root-toegang tot de server hebben om deze procedures te volgen. Als je een Managed VPS of Managed Dedicated Server hebt (en geen root-toegang hebt) en het logbestand voor langzame zoekopdrachten wilt inschakelen, open dan een ticket op de Customer Portal op https://my.a2hosting.com.

Het logbestand voor trage zoekopdrachten inschakelen

Langzame query's kunnen van invloed zijn op de databaseprestaties en de algehele serverprestaties. Met de functie voor langzame querylog in MySQL kunt u query's registreren die een vooraf gedefinieerde tijdslimiet overschrijden. Dit vereenvoudigt de taak van het vinden van inefficiënte of tijdrovende zoekopdrachten aanzienlijk.

Volg deze stappen om het logbestand voor trage zoekopdrachten in MySQL in te schakelen:

  1. Log in op uw server met SSH.
  2. Typ de volgende opdracht op de opdrachtregel:
    mysql -u root -p
  3. Typ het MySQL-rootwachtwoord.
  4. Typ de volgende opdracht achter de prompt mysql> om het logbestand voor trage query's in te schakelen:

    SET GLOBAL slow_query_log = 'ON';
  5. Er zijn extra opties die u kunt instellen voor het logbestand voor langzame query's:

    • Als het logboek voor trage zoekopdrachten is ingeschakeld, wordt standaard elke zoekopdracht vastgelegd die langer dan 10 seconden duurt. Om dit interval te wijzigen, typt u de volgende opdracht en vervangt u X met de tijd in seconden:
      SET GLOBAL long_query_time = X;
    • Het logbestand voor trage zoekopdrachten bevindt zich standaard op /var/lib/mysql/hostname-slow.log . Om het logpad of de bestandsnaam te wijzigen, typt u de volgende opdracht en vervangt u pad met het pad naar het bestand, en bestandsnaam met de naam van de logbestandsnaam:

      SET GLOBAL slow_query_log_file = '/path/filename';
  6. Om te controleren of het log met trage zoekopdrachten correct werkt, logt u uit van de mysql programma en log vervolgens weer in. (Hiermee worden de sessievariabelen voor de mysql opnieuw geladen programma.) Typ de volgende opdracht en vervang X met een waarde die groter is dan de long_query_time instelling:

    SELECT SLEEP(X);

    Het logbestand voor trage zoekopdrachten moet informatie over de zoekopdracht bevatten.

  7. Blijf het logbestand met trage zoekopdrachten volgen om te zien welke zoekopdrachten lang duren om te worden uitgevoerd.
  8. Wanneer u klaar bent met het oplossen van problemen, schakelt u het logbestand voor trage zoekopdrachten uit. Voer hiervoor de mysql programma opnieuw en typ de volgende opdracht:

    SET GLOBAL slow_query_log = 'OFF';
    U moet het logbestand voor trage zoekopdrachten alleen inschakelen zolang als nodig is om prestatieproblemen op te lossen.

Meer informatie

Ga voor meer informatie over het MySQL-log met trage zoekopdrachten naar https://dev.mysql.com/doc/refman/5.5/en/slow-query-log.html.


  1. Installeer SQL Server 2019 op een Mac

  2. SQL-prestaties op LEFT OUTER JOIN vs NOT EXISTS

  3. Hoe TO_BASE64() werkt in MariaDB

  4. TIME() Voorbeelden – MySQL