MySQL langsom forespørgselslog gør det nemt at spore SQL-forespørgsler, der tager mere end en bestemt tid at udføre. Dette giver dig mulighed for at finde ineffektive SQL-forespørgsler, der kan optimeres til at forbedre databasens ydeevne. Her er trinene til at aktivere MySQL langsom forespørgselslog. Du kan bruge dem til at aktivere langsom forespørgselslog i RDS, MariaDB og Aurora.
Sådan aktiverer du MySQL Slow Query Log på MySQL
Her er trinene til at aktivere langsom forespørgselslog i MySQL.
1. Log ind på MySQL
Åbn terminal og log ind på MySQL
$ mysql -u root -p
Du vil blive bedt om at indtaste adgangskode. Indtast det for at logge ind.
Bonuslæser:Top 5 MySQL-overvågningsværktøjer
2. Aktiver Slow Query Log
Indtast følgende kommando for at aktivere den langsomme forespørgselslog
mysql> SET GLOBAL slow_query_log = 'ON';
3. Tilpas logfil for langsom forespørgsel
Når du har aktiveret den langsomme forespørgselslog, vil MySQL logge enhver SQL-forespørgsel, der tager mere end 10 sekunder at køre.
Hvis du vil, kan du ændre dette tidsinterval ved at køre følgende kommando. Erstat 'x' med det tidsinterval sekunder, du ønsker, at MySQL skal vente, før du logger en forespørgsel.
mysql> SET GLOBAL long_query_time = x;
Sådan finder du log for langsom forespørgsel
Som standard gemmer MySQL langsom forespørgselslog på /var/lib/mysql/hostname-slow.log . Hvis du vil, kan du ændre dette til en anden filsti ved at bruge følgende kommando. Erstat sti og filnavn med henholdsvis filsti og filnavn.
mysql> SET GLOBAL slow_query_log_file = '/path/filename';
Bonuslæser:Top 5 MySQL GUI-værktøjer
4. Bekræft langsom logning af forespørgsler
Log ud af MySQL og log ind igen. Kør følgende forespørgsel for at logge den som en langsom forespørgsel. Erstat y med et tidsinterval, der er større end den værdi, du brugte i trin 3.
mysql> sleep(y);
Åbn den langsomme forespørgselslog
$ sudo vi /path/filename
Du vil finde information om ovenstående forespørgsel.
Bonus Læs:Sådan fremskynder du MySQL-forespørgsel
5. Deaktiver logfil for langsom forespørgsel
Hvis du vil deaktivere langsom forespørgselslog, skal du logge ind på MySQL og køre følgende kommando.
mysql> SET GLOBAL slow_query_log = 'OFF';
Forhåbentlig vil ovenstående artikel hjælpe dig med at aktivere langsom forespørgselslog i MySQL.