Pregunta

La construcción y el mantenimiento de una base de datos que luego se muestra / desarrollada por muchos DEVS es algo que continúa en el desarrollo de software todo el tiempo. Creamos un script de compilación y mantenemos más información sobre la actualización de scripts que se aplican a medida que la base de datos crece a lo largo del tiempo. Hay muchas maneras de administrar esto, desde actualizaciones manuales a las aplicaciones de consola / scripts de compilación que ayudan a automatizar estos procesos.

¿Alguien que haya construido / administrado estos procesos movidos a una solución de control de fuente para la gestión del esquema de la base de datos? Si es así, ¿qué han encontrado la mejor solución para ser? ¿Hay escollos que deben evitarse?

La puerta roja parece ser un gran jugador en el mundo de MSSQL y su control de fuente de DB se ve muy interesante: http://www.red-gate.com/products/solutions_for_sql/database_version_control. htm

Aunque no parece que reemplaza el proceso de administración de datos (predeterminados) *, por lo que solo reemplaza la mitad del proceso de administración de cambios de mi POV.

(cuando estoy hablando de datos, me refiero a los valores de búsqueda y ese tipo de cosas, los datos que deben implementarse de forma predeterminada o en un escenario DR)

Trabajamos en un entorno .NET / MSSQL, pero estoy seguro de que la premisa es la misma en todos los idiomas.

Otros consejos

Busco un almacén de datos desarrollado internamente por el banco donde trabajo. Esto requiere una actualización constante, y tenemos un equipo de 2-4 devs trabajando en él.

Somos afortunados porque solo hay una instancia de nuestro "producto", por lo que no tenemos que atender a la implementación de múltiples instancias que pueden estar en diferentes versiones.

Mantenemos un archivo de script de creación para cada objeto (tabla, vista, índice, procedimiento almacenado, disparador) en la base de datos.

Evitamos el uso de ALTER TABLE Siempre que sea posible, prefiriendo cambiar el nombre de una tabla, crear la nueva y migrar los datos. Esto significa que no tenemos que mirar a través de un historial de scripts de ALTER: siempre podemos ver la versión actualizada de cada tabla al ver su script de creación. La migración se realiza mediante un script de migración por separado, esto puede ser parcialmente generado automáticamente.

Cada vez que hacemos una versión, tenemos un script que ejecuta los scripts de creación de scripts / migración en el orden apropiado.

FYI: Utilizamos Visual SourceSafe (¡Yuck!) Para el control del código fuente.

He estado buscando una herramienta de control de fuente de SQL Server, y se encontró con muchas versiones premium que realizan el trabajo, utilizando SQL Server Management Studio como un complemento.

Liquibase es libre, pero nunca lo tengo de acuerdo con mis necesidades.

Hay otro producto gratuito por ahí, aunque eso funciona, a lo largo de SSMS y Scripts Out Objects and Data a File Flat.

Estos objetos se pueden bombear en una nueva instancia de SQL Server, que luego volverá a crear los objetos de la base de datos.

consulte gitsql

Tal vez estés pidiendo ¿Liquibase ?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top