•
Toda migración acaba obteniendo una cierta complejidad si queremos minimizar el tiempo de corte y poder garantizar haya una “vuelta atrás” en caso de problemas. Vamos a ver una forma de migrar un MySQL master de un disco de una cabina a otro disco de otra cabina minimizando el tiempo de corte gracias a un slave que transformamos en master y volvemos a transformar en slave.
[...]
Leer mas »
•
Un MySQL puede estar compilado para soportar varios STORAGE ENGINES, vamos a ver de los que disponemos y sus características:
[...]
Leer mas »
•
En ciertas bases de datos dónde el tiempo de recuperación de una tabla es crítico podemos mantener un conjunto de snapshots online (penalizando el rendimiento del disco) con el fin de disponer de puntos de recuperación muy cercanos al estado actual. Vamos a ver como configurarlo usando mylvmbackup
[...]
Leer mas »
•
Al ver que un site se queda frito durante un minuto pero cuando entramos ya no queda ningún thread en el MySQL debemos investigar los logs.
[...]
Leer mas »
•
Tal y como podemos encontrar en el manual del MySQL, el uso de LIMIT en queries que modifican tablas es inseguro en modo STATEMENT (por defecto). Si lo hacemos nos encontraremos en el log mensajes similares a:
120123 19:06:01 [Warning] Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses a LIMIT clause. This is unsafe because the set of rows included cannot be predicted. Statement: DELETE FROM casas
WHERE DATEDIFF(NOW(), casa_date) > 31 limit 1000
[...]
Leer mas »
•
Mediante SHOW OPEN TABLES podemos ver las tablas que están actualmente abiertas en la table cache y si esta en uso o si tiene threads a la espera a que otro libere el bloqueo.
[...]
Leer mas »