Onafhankelijk. Vanuit Brabant. Sinds 2010.
088-2555 355Klantomgeving
Hosting & beheer

Een trage databasequery vinden voordat u meer RAM bestelt

Koppel een langzaam verzoek aan databasewerk en onderzoek herhaling, scans en wachttijd. Meet de verbetering voordat u servercapaciteit uitbreidt.

Begin bij de trage handeling

Noteer welke pagina, zoekactie of import langzaam is en wanneer. Controleer eerst of de tijd werkelijk in de database zit. Wachten op een externe dienst of zwaar beeldmateriaal vraagt een ander onderzoek.

Verzamel een representatief tijdvak met normale en trage verzoeken. Voorkom dat een losse piek de enige basis voor een serverwijziging wordt.

Slow query-informatie verzamelen

MySQL kan langzame queries loggen op basis van ingestelde drempels. Het inschakelen en begrenzen daarvan is een beheerdershandeling. Op gedeelde hosting vraagt u de beheerder om de relevante gegevens van uw eigen toepassing.

Laat logging niet onbeperkt aanstaan: SQL kan persoonsgegevens bevatten en grote logs veroorzaken. Bewaar queryvorm, duur, aantal onderzochte rijen en het bijbehorende verzoek, met gevoelige waarden verwijderd.

De juiste query kiezen

Een eenmalige langzame onderhoudstaak kan minder impact hebben dan een middelmatige query die bij ieder bezoek honderden keren wordt uitgevoerd. Kijk dus naar frequentie en totale tijd, niet alleen naar de langste regel.

Controleer ook locks en andere wachttijd. Meer RAM helpt niet vanzelf wanneer processen op dezelfde vergrendelde gegevens wachten.

Het uitvoerplan beoordelen

Een ontwikkelaar kan met EXPLAIN bekijken hoe de database een query wil uitvoeren. Beoordeel filters, joins, gebruikte indexen en het aantal verwachte rijen. Een index toevoegen heeft ook kosten voor opslag en schrijven en moet daarom bij het echte gebruik passen.

EXPLAIN ANALYZE voert de query daadwerkelijk uit. Gebruik dat niet gedachteloos op productie of op een opdracht met ongewenste effecten. Werk voor proeven met een geschikte kopie.

Eén verbetering testen

Pas de query, index of herhaalde aanroep gericht aan en vergelijk dezelfde handeling. Controleer naast snelheid of de resultaten nog juist zijn. Bewaar de eerdere inrichting en een rollback voor schemawijzigingen.

Blijft de belasting hoog na applicatieverbeteringen, bespreek dan capaciteit met metingen erbij. Zo is duidelijk of extra geheugen, CPU of een andere inrichting de aangetoonde beperking oplost.

← Terug naar de kennisbankEen vraag of aanvulling doorgeven