Las tareas típicas (y automatizables) para el mantenimiento de MySQL son las siguientes:
- Copias de seguridad
- Limpieza de logs binarios
- Optimización de tablas
- Vaciamiento de cache de consultas
- Rotación de logs binarios
A continuación, se explica brevemente cada una de las tareas mencionadas:
(more…)
- Utilizar el comando EXPLAIN
- Utilizar permisos poco complejos: permite reducir la sobrecarga cuando los clientes ejecutan las sentencias
- Utilizar la función BENCHMARCH() para ver lo rápido que MySQL procesa la expresión
- Optimizar la cláusula WHERE: elimine paréntesis innecesarios. Use la opción SQL_SMALL_RESULT para indicarle al optimizador que el conjunto de datos a devolver es pequeño
- Ejecutar OPTIMIZE TABLE: defragmenta, repara y ordena los archivos
- Evitar columnas de longitud variable como VARCHAR, BLOB, and TEXT
- Utilizar INSERT DELAYED cuando los clientes no pueden esperar a que el INSERT se complete
- Priorizar las sentencias con INSERT LOW_PRIORITY y SELECT HIGH_PRIORITY
- Usar INSERT múltiple para insertar varias filas (INSERT INTO … VALUES (…),(…),(…) )
- Sincronizar los tipos de datos. Por ejemplo, que los tipos de datos de los campos utilizados en un JOIN sean los mismos.
Vía: 10 tips for optimizing mysql queries
La sentencia EXPLAIN “explica” como son ejecutadas las consultas en MySQL. A través de la misma se puede saber si necesita leer toda la tabla, si se utilizan índices, el número de filas exploradas e información extra.
El uso de EXPLAIN puede servir mucho para optimizar cada una de las consultas que realicen nuestras aplicaciones y mejorar el desempeño de la misma, ya sea escribiendo de mejor forma las consultas o agregando índices a las tablas cuando así lo requieran.
(more…)
Comentarios recientes