Ver Mensaje Individual
  #2 (permalink)  
Antiguo 24/10/2010, 16:20
Avatar de neodani
neodani
 
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Hacer uso de la caché de mysql?

Cita:
Iniciado por neodani Ver Mensaje
Buenas noches,

Estoy intentando hacer uso de la caché de mysql pero no consigo ver resultados, no se si lo estoy haciendo de la forma correcta.

Si abro la consola de mysql y ejecuto el siguiente comando me muestra

mysql> show variables like '%query_cache%';
+------------------------------+---------+
| Variable_name | Value |
+------------------------------+---------+
| have_query_cache | YES |
| query_cache_limit | 1048576 |
| query_cache_min_res_unit | 4096 |
| query_cache_size | 0 |
| query_cache_type | ON |
| query_cache_wlock_invalidate | OFF |
+------------------------------+---------+
6 rows in set (0.00 sec)


Significa que tengo activada la caché, no?

En cambio cuando cargo mi pagina web, la cual tiene 1 consulta hacia la base de datos para obtener el listado de paises en un campo desplegable, no veo que los siguientes campos se actualicen... y creo que deberían, no?

mysql> show status like '%qcache%';
+-------------------------+-------+
| Variable_name | Value |
+-------------------------+-------+
| Qcache_free_blocks | 0 |
| Qcache_free_memory | 0 |
| Qcache_hits | 0 |
| Qcache_inserts | 0 |
| Qcache_lowmem_prunes | 0 |
| Qcache_not_cached | 0 |
| Qcache_queries_in_cache | 0 |
| Qcache_total_blocks | 0 |
+-------------------------+-------+
8 rows in set (0.03 sec)

¿Sabéis si lo estoy haciendo bien? donde puedo ver las consultas cacheadas?

Muchas gracias de antemano
Buenas,

Creo que no iba porque no había asignado espacio a la caché

mysql> show variables like '%query_cache%';
+------------------------------+---------+
| Variable_name | Value |
+------------------------------+---------+
| have_query_cache | YES |
| query_cache_limit | 1048576 |
| query_cache_min_res_unit | 4096 |
| query_cache_size | 0 |
| query_cache_type | ON |
| query_cache_wlock_invalidate | OFF |
+------------------------------+---------+
6 rows in set (0.00 sec)

Le puse 20 megas y ahora me muestra información cada vez que cargo la página.

mysql> show status like '%qcache%';
+-------------------------+----------+
| Variable_name | Value |
+-------------------------+----------+
| Qcache_free_blocks | 1 |
| Qcache_free_memory | 20957024 |
| Qcache_hits | 6 |
| Qcache_inserts | 1 |
| Qcache_lowmem_prunes | 0 |
| Qcache_not_cached | 0 |
| Qcache_queries_in_cache | 1 |
| Qcache_total_blocks | 4 |
+-------------------------+----------+
8 rows in set (0.00 sec)


Entiendo que...

Qcache_hits son el número de consultas que han usado caché, si este número aumenta es bueno, no? significa que la caché funciona bien, no?
Qcache_inserts es el número de consultas cacheadas... en este caso solo una (el desplegable de paises)
Qcache_queries_in_cache es lo mismo que el anterior?

¿Alguien sería tan amable de explicarme que significa cada campo?

Muchas gracias de antemano