Actualmente estoy desarrollando una aplicación usando una base de datos MySQL.
La estructura de la base de datos todavía está cambiando y cambia mientras el desarrollo progresa (cambio mi copia local, dejando solo la del servidor de prueba).
¿Hay alguna manera de comparar las dos instancias de la base de datos para ver si hubo algún cambio?
Si bien actualmente simplemente descartar la base de datos del servidor de prueba anterior está bien, a medida que las pruebas comienzan a ingresar datos de prueba, podría ser un poco complicado.
Sin embargo, lo mismo ocurrirá más tarde en la producción ...
¿Hay una manera fácil de hacer cambios incrementales en la base de datos de producción, preferiblemente creando automáticamente un script para modificarlo?
Herramientas mencionadas en las respuestas:
- Comparación de esquema y datos MySQL de Red-Gate (comercial)
- Maatkit (ahora Percona)
- liquibase
- Sapo
- Comparación de la base de datos de Nob Hill (comercial)
- Diferencia MySQL
- SQL EDT (Comercial)