Tareas típicas para el mantenimiento de MySQL
Tareas que se deberían ejecutar para el mantenimiento de la base de datos de MySQL:
- Backup: hay que realizarlo de los ficheros de datos, ficheros de logs de transacciones, ficheros de configuración y logs binarios.
- Limpiar los logs binarios: Se puede hacer mediante my.conf usando expire_logs_days o mediante la sentencia PURGE MASTER LOGS. Eso sí, no purgar los logs que necesiten los esclavos, ni borrarlos mediante un comando de un fichero (rm bin-log.*).
- Optimizar las tablas: después de inserts y updates las tablas se llenan de espacio inútil, por lo que es necesario optimizar las tablas usando OPTIMIZE TABLE.
- Vaciar la caché: cuando se ejecutan selects con tamaños diferentes de resultados, el cache se defragmenta, lo cual hace necesario que se vacie la cache (FLUSH QUERY CACHE).
- Rotar los logs binarios: los logs binarios solo se rotan por tamaño, si quieres hacerlo en un determinado momento se debería usar la sentencia FLUSH LOGS.
El otro dÃa nos preguntaban una forma de migrar una base de datos Access a otra MySQL. En ese momento no conocÃa ninguna aplicación que pudiera hacerlo, pero hoy me he enterado que los propios de MySQL tienen MySQL Migration Toolkit, que permite mediante una serie de pasos realizar una migración de forma correcta.
