MySQL har en nyttig funksjon som heter " spørring cache" som forbedrer MySQL ytelsen betraktelig når den er aktivert . Spørringen cache inneholder teksten i en SELECT-setning sammen med henhold resultat som ble sendt til klienten. Når identiske uttalelser er mottatt i fremtiden, søker serveren for resultatene fra spørringen cache i stedet for å gjennomføre uttalelsene igjen . Spørringen cache er også delt mellom øktene , og dermed en spørring resultat generert av én bruker kan brukes av en annen bruker . Spørringen cache er aktuelt i sammenhenger hvor tabellene ikke ofte endrer og serveren mottar mange identiske spørsmål om bordene . Imidlertid har spørring buffer forskjellige begrensninger. Transparent Caching
Query cache er helt transparent for applikasjonen . Dette vil føre til problemer i enkelte tilfeller. Når søket cache er aktivert, kan du alltid få søkeresultatene selv når de relaterte tabellene er låst og blir oppdatert. Låsing tabeller betyr vanligvis tabellene er utilgjengelige , men søkeresultatene fra spørringen cache vil fortsatt komme til brukerne .
Caching Begrensning
spørring cache fungerer ikke for sub- velger , inline utsikt, eller fagforening . Spørringene må være nøyaktig den samme for å utnytte resultatet fra spørringen cache , noe som betyr at hvis du setter dynamiske kommentarer i søket med flere mellomrom eller annen sak , får du et annet resultat fra søket cache . En annen begrensning er bare SELECT spørringer er bufret. Unngå kommentarer eller mellomrom i starten av spørring som spørring cache bare sjekker den første bokstaven i søket og bare hvis det er " S" ikke fortsetter det å fortsette caching søkeresultatene.
Tabell Nivå Granularitet i ugyldig
p Hvis tabellene er endret eller oppdatert , er alle spørsmål som stammer fra tabellene ugyldiggjort umiddelbart. De fleste av spørringene er ikke endret, men MySQL kan ikke identifisere endrede seg, og dermed den sletter alle av dem. Dette er den viktigste grunnen som begrenser søket cache effektivitet. Spesielt med høy skrivehastighet program, for eksempel fora , er spørring cache effektiviteten svært lav på grunn av denne begrensningen .
Fragmentering Over tid
p Med tiden blir spørring cache fragmentert og mindre effektiv . Den " FLUSH QUERY CACHE "-kommandoen kan brukes til spørring cache defragmentering , men det kan blokkere spørring cache for å få til en stor spørring cache , noe som er upassende for elektroniske søknader.