sql >> Database >  >> RDS >> Mysql

Hoe MySQL Query Cache in te schakelen

MySQL-querycache slaat queryresultaten op van vaak en recent uitgevoerde query's, zodat ze snel kunnen worden geretourneerd zonder dat alles vanaf het begin hoeft te worden verwerkt. Ze zijn erg handig bij het verbeteren van de querysnelheid en databaseprestaties. Hier zijn de stappen om de MySQL-querycache voor uw database in te schakelen, de MySQL-cachegrootte in te stellen en de querycache uit te schakelen. Let op , MySQL-querycache is verouderd in MySQL 5.7 en verwijderd in MySQL 8.0.


Hoe MySQL Query Cache inschakelen

Hier is de MySQL Query-cacheconfiguratie voor uw database.


1. Beschikbaarheid controleren

Log in op MySQL en voer de volgende opdracht uit om te controleren of de MySQL-querycache beschikbaar is voor uw database.

mysql> SHOW VARIABLES LIKE 'have_query_cache';
+------------------+-------+
| Variable_name    | Value |
+------------------+-------+
| have_query_cache | YES   |
+------------------+-------+

Als het resultaat JA is, betekent dit dat uw database querycache ondersteunt.

Bonus Lezen:MySQL Slow Query Log inschakelen

2. Standaard querycachevariabelen

MySQL-querycache wordt beheerd door vele variabelen. Voer de volgende opdracht uit om eerst hun standaardwaarden te bekijken, voordat u ze wijzigt.

mysql> show variables like 'query_cache_%' ;

U ziet de volgende uitvoer

+------------------------------+----------+
| Variable_name                | Value    |
+------------------------------+----------+
| query_cache_limit            | 1048576  |
| query_cache_min_res_unit     | 4096     |
| query_cache_size             | 16777216 |
| query_cache_type             | OFF      |
| query_cache_wlock_invalidate | OFF      |
+------------------------------+----------+

Laten we eens kijken naar de bovenstaande querycachevariabelen,

  • query_cache_limit – maximale grootte van zoekopdrachtresultaten die in de cache kunnen worden opgeslagen
  • query_cache_min_res_result – MySQL slaat het queryresultaat op in blokken. Dit is de minimale grootte van elk blok.
  • query_cache_size – geeft de totale hoeveelheid geheugen aan die is toegewezen voor MySQL-cache.
  • query_cache_type - als u dit op 0 of UIT zet, wordt de MySQL-querycache uitgeschakeld. door het in te stellen op 1 wordt de querycache ingeschakeld.
  • query_cache_wlock_invalidate – bepaalt of MySQL resultaten uit de cache moet ophalen als de onderliggende tabel is vergrendeld.

Bonus lezen:Top 5 MySQL-bewakingstools

3. MySQL-querycache inschakelen

Log uit bij MySQL. Open terminal en voer de volgende opdracht uit om het MySQL-configuratiebestand te openen.

$ sudo vi /etc/mysql/my.cnf

Voeg de volgende regels toe onder het gedeelte [mysqld]

... 
[mysqld] 
query_cache_type=1 
query_cache_size = 10M 
query_cache_limit=256K

We hebben querycache ingeschakeld door de variabele query_cache_type in te stellen op 1, met individuele querycache als 256Kb en totale cache als 10Mb. U kunt de waarden van query_cache_size en query_cache_limit volgens uw vereisten wijzigen.

Bonus lezen:MySQL-query's versnellen

4. Start MySQL-database opnieuw

Start MySQL opnieuw om wijzigingen toe te passen

$ sudo systemctl restart mysql

OF

$ sudo service mysql restart

OF

$ sudo /etc/init.d/mysql restart


Hopelijk helpt dit artikel je bij het configureren van MySQL-querycache.

  1. Wat is de locatie van mysql-client .my.cnf in XAMPP voor Windows?

  2. Drop vs Truncate in SQL

  3. Databaseservices op AWS en Oracle Cloud Platform

  4. Python-woordenboek invoegen met Psycopg2