Blog de Gonzalo

Blog de programación de Gonzalo López

CACHÉ DE CONSULTAS
MYSQL

MySQL permite la opción de guardar las consultas en caché, lo más lógico es guardar las consultas de tipo select ya que las consultas de tipo insert, delete o update rara vez van a coincidir.
Si la caché de MySQL está activada busca la consulta, en la caché, antes de analizarla por lo que se ahorra tiempo y recursos y se aumenta el rendimiento del servidor.
Para habilitar la cache de consulta MySQL es necesario modificar algunas variables en el archivo de configuración del servidor MySQL (normalmente es my.cnf o my.ini:
-Se debe establecer el valor query_cache_type a uno de los posibles valores: 0 (deshabilitado / off), 1 (habilitado / on) y 2 (bajo solicitud).
query-cache-type = 1
-Se debe establecer el tamaño de query_cache_size al que usted desee. Por lo general con 20MB es un valor normal.
query-cache-size = 20M
-Si se establece una cache de consulta 'query-cache-type' = 2 (bajo demanda), habrá que modificar sus consultas SQL (.sql), para que soporten la consultas de cache.
Hay que tener cuidado a la hora de usar las queries ya que el cacheado es sensible a mayúsculas y minúsculas y si introduces una misma consulta de forma diferente no la encontrará en la caché.
.MySQL guarda las consultas en la caché con hash.
SELECT SQL_CACHE field1, field2 FROM table1 WHERE field3 = 'yes'
Para verificar si su servidor MySQL tiene habilitada la consulta cache, es suficiente ejecutar la siguiente consulta:
SHOW VARIABLES LIKE ?%query_cache%';
La primera vez que se ejecuta una consulta a MySQL es normal que lleve un poco más de tiempo, pero la segunda vez será más rápida en comparación con el primer tiempo de consulta, y eso implica que la cache de consulta MySQL está funcionando correctamente.

Compartir en twitter