¿Cómo gestionar muchas instancias idénticas de un esquema MySQL en muchas máquinas?

¿Cómo gestionar muchas instancias idénticas de un esquema MySQL en muchas máquinas?

Estoy trabajando en un proyecto que tiene un esquema de base de datos MySQL que se usa en tres servidores diferentes (bases de datos MySQL) en 20 copias del esquema para cada servidor (que son todas idénticas en forma pero contienen datos diferentes).... entonces 60 copias del mismo esquema repartidas en tres máquinas.

Esas máquinas informan a una máquina host con sus resultados. El problema con el que me encuentro es gestionar los cambios de esquema mientras todo está implementado. Cada vez que quiero agregar o eliminar una columna, tengo que replicar la consulta 20 veces y luego copiarla en tres máquinas. ¿Existe algún software que pueda usar para administrar todas estas instancias de bases de datos idénticas (en esquema, obviamente no en contenido de datos)? Quiero encontrar un software que revise todas las instancias de la base de datos y me indique cualquier cambio de esquema entre ellas (así como los tamaños de las tablas de las instancias individuales).

¿Existe algún software que pueda ayudarme a administrar todo desde una GUI de fuente única o un programa de línea de comandos?

Respuesta1

Hay un par de opciones que pueden ayudarte con eso, algunas son:

  • ansible
  • Jenkins
  • cubierta

Puede integrar Jenkins con los webhooks de Github, Bitbucket o Gitlab, de modo que cada vez que se realiza una nueva confirmación, se lanza una canalización de DevOps.

Si está utilizando algún marco como Rails, también puede ejecutar migraciones y seeders usando estos softwares, que también es una opción para mantener controlada la versión del esquema de su base de datos.

¡Cya!

información relacionada