Waarom is MySQL-querycache verouderd?
Waarom is MySQL-querycache verouderd?

Video: Waarom is MySQL-querycache verouderd?

Video: Waarom is MySQL-querycache verouderd?
Video: mysql query cache возможные проблемы кэширование запросов 2024, Mei
Anonim

De query cache is standaard uitgeschakeld sinds MySQL 5.6 (2013) omdat het bekend is dat het niet schaalt met workloads met hoge doorvoer op multi-core machines. We hebben nagedacht over welke verbeteringen we zouden kunnen aanbrengen in: query cache versus optimalisaties die we konden maken die verbeteringen aan alle workloads opleveren.

Als u dit in overweging neemt, wordt de queryresultaten van MySQL dan in de cache opgeslagen?

Ja, mijnSQL (net als bij alle andere populaire databaseproducten) caches de vragen die eraan gemaakt zijn. De caching is behoorlijk slim -- het kan vaak een cache voor een vraag zelfs als de exacte parameters van de vraag zijn niet hetzelfde. Dit kan een groot verschil maken voor de prestaties.

hoe schakel ik MySQL-querycache in? Om er zeker van te zijn MySQL-querycache is ingeschakeld gebruik: mysql > TOON VARIABELEN ZOALS 'have_query_cache'; Toezicht houden op query cache statistieken gebruik: mysql > TOON STATUS ZOALS 'Qcache%';

Hoe werkt MySQL-querycache hieromtrent?

Querycache is een prominente MySQL functie die het ophalen van gegevens uit een database versnelt. Het bereikt dit door op te slaan: MySQL SELECT-instructies samen met de opgehaalde recordset in het geheugen, en als een klant identiek verzoekt vragen het kan de gegevens sneller bedienen zonder opnieuw opdrachten uit de database uit te voeren.

Hoe schakel ik de MySQL-querycache uit?

Vraag tot uitzetten de cache Van de MySQL opdrachtregel, een toepassing zoals phpMyAdmin, of vanuit een script, voer de volgende SQL-opdracht uit om: uitzetten de query cache : STEL GLOBALE query_cache_size = 0 in; Dit zal onmiddellijk van kracht worden. U moet ook de MySQL configuratiebestand om het te bewaren gehandicapt bij opnieuw opstarten.

Aanbevolen: