Una actualización de MySQL que parecía segura y terminó corrompiendo datos

A safe MySQL upgrade that wasn't so safe

Un desarrollador relata cómo una actualización de MySQL en AWS, que parecía rutinaria, provocó una corrupción silenciosa de datos: una tabla perdió la correspondencia de IDs con otra tabla relacionada. El problema se originó en la combinación de una columna AUTO_INCREMENT añadida mediante ALTER TABLE y el formato de binlog MIXED, que alterna entre replicación basada en sentencias y basada en filas. La historia explica cómo esta interacción puede generar inconsistencias en réplicas y ofrece una advertencia sobre los riesgos ocultos en las actualizaciones de bases de datos.

Lo aterrador de este tipo de problema es que es inesperado y fácil de pasar por alto, pero puede convertirse rápidamente en un desastre en producción.
  1. Insimwytim

    Eso es algo divertido (no de una manera divertida).

    Ya que la actualización se hace semiautomáticamente mediante AWS RDS, ¿asume AWS alguna responsabilidad por ello? A menos que este caso de uso esté advertido en las notas de migración, creo que deberían.

  2. 190n

    No entiendo por qué este problema solo apareció después de la actualización, no inmediatamente después de la migración para añadir la columna.

  3. krautburglar

    Mezclar formatos de binlog entre réplicas me parece un error del usuario.

Más de este día

2026-08-29