GoDaddy Hjälp

Vi gjorde vårt bästa för att översätta den här sidan åt dig. Sidan är också tillgänglig på engelska.

Granska långsamma MySQL-frågor

Du har aktiverat långsam frågeloggning och har nu en logg att granska. Om du inte har aktiverat loggning hittar du stegen här .

Analyserar loggen

Loggplats:
/var/log/slow-queries.log
OBS ! Om du inte hittar en logg på den här platsen ska du verifiera posten i my.cnf och att MySQL startades om efter att ändringen gjordes.
Format:
# Tid: 210905 6:33:11 # Användare @ Värd: dbuser [dbname] @ värdnamn [1.2.3.4] # Query_time: 12.116250 Lock_time: 0.000035 Rows_sent: 0 Rows_examined: 201565 use dbname; SET-tidsstämpel = 1409898791; ... LÅNGSAM FRÅGA HÄR ...

Loggen kan vara överväldigande när du har dussintals om inte hundratals poster i formatet ovan. För att göra loggen mer läsbar använder du mysqldumpslow för att analysera loggen.

mysqldumpslow -r -a /var/log/mysql/mysqld.slow.log Utdata
kommer att innehålla viktig information som tid , rader och fråga .
Antal: 2 Tid = 20,54s (41s) Lås = 0,02s (0s) Rader = 12547802 (0), dbuser [dbuser] @localhost VÄLJ * FRÅN db_exp_table WHERE site_user_id = '214380' BESTÄLLA PÅ site_id DESC LIMIT 0,2 Räkna: 1 Tid = 21.74s (21s) Lås = 0.01s (0s) Rader = 12547802 (0), dbuser [dbuser] @localhost VÄLJ * FRÅN db_exp_table WHERE site_user_id = '214380' ORDER BY site_id DESC LIMIT 0,2 Count: 1 Time = 23,86s (23s) Lås = 0,20s (0s) Rader = 12547802 (0), dbuser [dbuser] @localhost VÄLJ * FRÅN db_exp_table WHERE site_user_id = '214380' BESTÄLLA PÅ site_id DESC LIMIT 0,2

Om vi tittar på exemplet ovan har vi en fråga som det har tagit 20–24 sekunder att köra. Detta orsakar problem med din webbplats, allt från långsam laddningstid till timeout-fel (oändlig snurrning). Frågan undersöker 12 547 802 rader. En stor fråga (dvs. välj *) som körs på en tabell med över 12 miljoner rader leder sannolikt till en dålig användarupplevelse. Om du optimerar frågan (t.ex. väljer du "soffbord") eller minskar de undersökta raderna (t.ex. arkiverar gamla data) påskyndas frågan.

Om loggfilen är stor kör du mysqldumpslow och sparar utdata i en fil. Detta gör det enklare att granska med andra filhanteringsverktyg som grep eller find .

mysqldumpslow -r -a /var/log/slow-queries.log > slow.log.parsed

Nästa steg

När du har granskat den långsamma frågeloggen bör du ha en god uppfattning om problematiska frågor som behöver åtgärdas. Om din webbplats fortfarande körs långsamt med MySQL med höga resurser kan du behöva optimera MySQL för att bättre utnyttja din servers resurser.

När du är klar med loggen, se till att inaktivera MySQL långsam frågeloggning . Om du låter loggning vara aktiverad dräneras MySQL-resurser i onödan och kan fylla din disk (med dåliga frågor).

GoDaddy värdtjänster

Våra serverexperter kan aktivera / inaktivera långsam loggning av MySQL och optimera MySQL. Om du vill veta mer om den här tjänsten: våra GoDaddy-guider är här för att hjälpa dig.

Mer information

Mer information om de värdtjänster som GoDaddy erbjuder finns i vårMeny över värdtjänster .