Felhasználói eszközök

Eszközök a webhelyen


mysql-esettanulmany-1

Különbségek

A kiválasztott változat és az aktuális verzió közötti különbségek a következők.

Összehasonlító nézet linkje

Előző változat mindkét oldalonElőző változat
Következő változat
Előző változat
mysql-esettanulmany-1 [2025/09/12 09:29] daevidtmysql-esettanulmany-1 [2025/09/12 09:33] (aktuális) – [Lehet online is kikapcsolni a query cache-t, vagy csak újraindítással?] daevidt
Sor 1: Sor 1:
 ====== MySQL teljesítmény és Query Cache problémák ====== ====== MySQL teljesítmény és Query Cache problémák ======
  
-Szia! mit érdemes tenni, ha a mysql processlistben rengeteg a "Waiting for query cache lock"?+Mit érdemes tenni, ha a mysql processlistben rengeteg a "Waiting for query cache lock"?
  
 ====Válasz:==== ====Válasz:====
-  A `Waiting for query cache lock` üzenet a MySQL processlistben azt jelzi, hogy a Query Cache-t használod, és a folyamatok sorban állnak, mert egyszerre csak egy query írhat/érvényesíthet bejegyzést a cache-be.+A `Waiting for query cache lock` üzenet a MySQL processlistben azt jelzi, hogy a Query Cache-t használod, és a folyamatok sorban állnak, mert egyszerre csak egy query írhat/érvényesíthet bejegyzést a cache-be.
  
-  ===Probléma oka és megoldás:===+===Probléma oka és megoldás:===
   - A Query Cache globális lockot használ → sok írás/törlés esetén a cache állandóan érvénytelenítve lesz.   - A Query Cache globális lockot használ → sok írás/törlés esetén a cache állandóan érvénytelenítve lesz.
   - Emiatt a párhuzamos lekérdezések blokkolják egymást.   - Emiatt a párhuzamos lekérdezések blokkolják egymást.
  
-  ===Megoldási javaslatok:===+===Megoldási javaslatok:===
   * Kapcsold ki a Query Cache-t:   * Kapcsold ki a Query Cache-t:
     <code>     <code>
Sor 19: Sor 19:
   * Modern környezetben érdemes alkalmazás szintű cache-t használni (Redis/Memcached).   * Modern környezetben érdemes alkalmazás szintű cache-t használni (Redis/Memcached).
  
-  ** Bevált a query_cache_type = DEMAND; alacsony query cache méret mellett.**+** Bevált a query_cache_type = DEMAND; alacsony query cache méret mellett.**
  
 --- ---
  
-Lehet online is kikapcsolni a query cache-t, vagy csak újraindítással?+====Lehet online is kikapcsolni a query cache-t, vagy csak újraindítással?====
  
-===Válasz:=== +**Válasz:** 
-  Igen, online is kikapcsolható: +Igen, online is kikapcsolható: 
-  <code>+<code>
   SET GLOBAL query_cache_type = OFF;   SET GLOBAL query_cache_type = OFF;
   SET GLOBAL query_cache_size = 0;   SET GLOBAL query_cache_size = 0;
-  </code>+</code> 
   - `query_cache_type` dinamikusan állítható.   - `query_cache_type` dinamikusan állítható.
   - `query_cache_size` csak 0-ra állítható futás közben, visszaállítani új értékre csak 0 után lehet.   - `query_cache_size` csak 0-ra állítható futás közben, visszaállítani új értékre csak 0 után lehet.
Sor 39: Sor 40:
 ==== Hogyan lehet beállítani 128 MB-ra a query cache-t online?==== ==== Hogyan lehet beállítani 128 MB-ra a query cache-t online?====
  
-===Válasz:===+**Válasz:**
   - Ha `query_cache_size` jelenleg nem 0, először állítsd 0-ra:   - Ha `query_cache_size` jelenleg nem 0, először állítsd 0-ra:
     <code>     <code>
Sor 62: Sor 63:
  
 **Lépések:** **Lépések:**
 +
   - 1 GB → 8 GB   - 1 GB → 8 GB
   - Ezzel a gyakran használt adatok és indexek memóriában maradnak.   - Ezzel a gyakran használt adatok és indexek memóriában maradnak.
Sor 71: Sor 73:
  
 **Példa számítás:** **Példa számítás:**
 +
   - read_requests = 1,000,000   - read_requests = 1,000,000
   - reads = 5,000   - reads = 5,000
mysql-esettanulmany-1.1757669375.txt.gz · Utolsó módosítás: 2025/09/12 09:29 szerkesztette: daevidt