La variable de sistema have_query_cache
        indica si la caché de consultas está disponible:
      
mysql> SHOW VARIABLES LIKE 'have_query_cache'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | have_query_cache | YES | +------------------+-------+
        Cuando se usa un binario MySQL 5.0 estándar, este valor siempre
        es YES, incluso si el cacheo de consultas
        está desactivado.
      
        Muchas otras variables de sistema controlan las operaciones de
        la caché de consultas. Pueden especificarse en un fichero de
        opciones o en la línea de comandos al arrancar
        mysqld. Todas las variables de sistema de la
        caché de consultas tienen nombres que empiezan con
        query_cache_. Se describen brevemente en
        Sección 5.3.3, “Variables de sistema del servidor”, con información
        adicional de configuracion dada aquí.
      
        Para especificar el tamaño de la caché de consulta, inicialice
        la variable de sistema query_cache_size.
        Ponerla a 0 desactiva la caché de consultas. El tamaño por
        defecto es 0; esto es, que está desactivada.
      
        Si el tamaño de la caché de consultas es mayor que 0, la
        variable query_cache_type influye en su
        funcionamiento. Esta variable puede tener los siguientes
        valores:
      
            Un valor de 0 o OFF
            evita cachear o recibir valores cacheados.
          
            Un valor de 1 o ON
            permite el cacheo excepto para aquellos comandos que
            empiecen con SELECT SQL_NO_CACHE.
          
            Un valor de 2 o DEMAND
            provoca el cacheo de sólo los comandos que empiecen con
            SELECT SQL_CACHE.
          
        Inicializar con el valor GLOBAL la variable
        query_cache_type determina el comportamiento
        de la caché de consultas para todos los clientes que se
        conecten tras el cambio. Cada clientes puede controlar el
        comportamiento de la caché para su propia conexión meidante el
        valor SESSION de
        query_cache_type. Por ejemplo, un cliente
        puede desactivar el uso de la caché de consultas para sus
        propias consultas así:
      
mysql> SET SESSION query_cache_type = OFF;
        Para controlar el tamaño máximo de resultados de consultas
        individuales que pueden cachearse, inicialice la variable
        query_cache_limit variable. El valor por
        defecto es 1MB.
      
        Cuando se cachea una consulta, su resultado (los datos que se
        envían al cliente) se guardan en la caché a medida que se
        reciben. Por lo tanto los datos normalmente no se guardan en un
        gran paquete. La caché reserva bloques para guardar estos datos
        bajo demanda, así que cuando se llena un bloque, se prepara un
        nuevo bloque. Puesto que la reserva de memoria es una operación
        costosa (lenta), la caché de consultas reserva bloques con un
        tamaño mínimo dado por la variable de sistema
        query_cache_min_res_unit. Cuando la consulta
        queda ejecutada, el último bloque de resultados se ajusta a su
        tamaño real para liberar la memoria no usada. En función del
        tipo de consulta que ejecute el servidor, puede encontrar útil
        cambiar el valor de query_cache_min_res_unit:
      
            El valor por defecto de
            query_cache_min_res_unit es 4KB. Debería
            ser un valor adecuado para la mayoría de los casos.
          
            Si tiene muchas consultas con resultados pequeños, el
            tamaño por defecto del bloque puede llevar a fragmentación
            de memoria, que se evidencia con un alto número de bloques
            libres. La fragmentación puede obligar a la caché a borrar
            consultas por falta de memoria. En este caso, debe
            decrementar el valor de
            query_cache_min_res_unit. El número de
            bloques libres y de consultas borradas debido a falta de
            espacio se da en las variables
            Qcache_free_blocks y
            Qcache_lowmem_prunes.
          
            Si la mayoría de las consultas tienen resultados grandes
            (compruebe las variables de estado
            Qcache_total_blocks y
            Qcache_queries_in_cache ), puede
            incrementar el rendimiento incrementando
            query_cache_min_res_unit. Sin embargo,
            tenga cuidado de no hacerlo demasiado grande (consulte el
            punto anterior).
          
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.

