una rendimiento rapida optimizar memoria mejorar mas lento hacer datos consultas consulta configurar configuracion con como cnf archivo mysql

rendimiento - optimizar mysql en debian



MySQL: obligue a no usar el caché para probar la velocidad de consulta (9)

Estoy probando la velocidad de algunas consultas en MySQL. La base de datos almacena estas consultas en caché, lo que me dificulta obtener resultados confiables al probar qué tan rápido son estas consultas.

¿Hay una manera de deshabilitar el almacenamiento en caché para una consulta?

Sistema: MySQL 4 en alojamiento web de Linux, tengo acceso a PHPMyAdmin.

Gracias



El uso de una variable definida por el usuario dentro de una consulta hace que la consulta se pueda volver a eliminar. Me pareció un indicador mucho mejor que usar SQL_NO_CACHE . Pero debe colocar la variable en un lugar donde la configuración de la variable no afecte seriamente el rendimiento:

SELECT t.* FROM thetable t, (SELECT @a:=NULL) as init;


Intente usar la SQL_NO_CACHE (MySQL 5.7) en su consulta. (Los usuarios de MySQL 5.6 hacen clic HERE )

p.ej.

SELECT SQL_NO_CACHE * FROM TABLE

Esto evitará que MySQL almacene en caché los resultados, sin embargo, tenga en cuenta que otros cachés de sistema operativo y de disco también pueden afectar el rendimiento. Estos son más difíciles de recorrer.


Otra alternativa que solo afecta a la conexión actual:

SET SESSION query_cache_type=0;


Si desea deshabilitar el caché de consultas, establezca ''query_cache_size'' en 0 en su archivo de configuración de mysql. Si su conjunto 0 mysql no utilizará el caché de consulta.


También hay una opción de configuración: query_cache_size = 0

Para deshabilitar el caché de consultas al inicio del servidor, configure la variable del sistema query_cache_size en 0. Al deshabilitar el código del caché de consultas, no hay una sobrecarga notable. Si crea MySQL desde la fuente, las capacidades de consulta de la memoria caché se pueden excluir completamente del servidor invocando configure con la opción --without-query-cache.

Consulte http://dev.mysql.com/doc/refman/5.1/en/query-cache.html


También puede ejecutar el siguiente comando para restablecer la caché de consulta.

RESET QUERY CACHE


Un problema con el

SELECT SQL_NO_CACHE * FROM TABLE

El método es que parece que solo impide que el resultado de su consulta se almacene en caché. Sin embargo, si está consultando una base de datos que se está utilizando activamente con la consulta que desea probar, entonces otros clientes pueden almacenar en caché su consulta, lo que afectará sus resultados. Continuaré investigando formas de solucionar esto, editaré esta publicación si descubro una.


Yo uso lo siguiente:

SHOW VARIABLES LIKE ''query_cache_type''; SET SESSION query_cache_type = OFF; SHOW VARIABLES LIKE ''query_cache_type'';