publishing database changes sql server using microsoft tfs
Este tutorial explica cómo crear un proyecto de base de datos de SQL Server en TFS y compartir el proyecto en el repositorio de Microsoft TFS en detalle:
En los tutoriales de la serie DevOps publicados @ DevOps Tutorial , hemos estudiado acerca de la automatización de Integración Continua y Entrega Continua para Java y .Net para implementaciones en las instalaciones y en la nube de las aplicaciones.
Las herramientas que hemos cubierto incluyen Microsoft VSTS con Azure, Amazon Web Services y Ansible. La serie se concentró en los cambios en el código fuente y la eficacia con la que se implementó rápidamente en varios entornos. Pero cuando hablamos de cualquier desarrollo de aplicaciones de 3 niveles, la base de datos también estaría involucrada y tendremos que aplicar las mismas técnicas a los cambios relacionados con la base de datos.
Lo que vas a aprender:
Microsoft Team Foundation Server 2015 y SQL Server 2014
Este artículo se centrará en áreas como el uso de Visual Studio 2015 para el desarrollo, la creación del proyecto de base de datos de SQL Server que contiene la definición de la base de datos, la creación de una definición de compilación para publicar los cambios en SQL Server, etc. utilizando Microsoft Team Foundation Server 2015 y SQL Server 2014.
Entonces, eventualmente, también necesitamos administrar los scripts de la base de datos y sus cambios de manera efectiva.
Crear proyecto de base de datos de SQL Server en TFS
Comencemos por crear el proyecto de base de datos en Visual Studio. Inicie Visual Studio 2015 y cree el proyecto de base de datos como se muestra en la imagen a continuación, usando Archivo-> Nuevo -> Proyecto . Ingrese un nombre y haga clic en Aceptar.
Agregue una nueva carpeta y asígnele el nombre Tablas. Esta carpeta contendrá todos nuestros archivos SQL. Haga clic derecho en el Proyecto y seleccione Agregar-> Nueva carpeta.
La carpeta creada se muestra en el Explorador de soluciones. Agregue una nueva tabla aquí y defina las columnas según corresponda.
Haga clic con el botón derecho en la carpeta de la tabla y seleccione Agregar-> Tabla como se muestra en la imagen de abajo.
Ingresar Nombre como Empleado con la opción Tabla seleccionada. Haga clic en Agregar.
Agregue algunas columnas como se muestra en la vista Diseño.
En caso de que tenga archivos SQL existentes, también puede importarlos haciendo clic derecho en el proyecto de la base de datos y seleccionando Importar script (* .SQL)
Similitud, Agregar -> Procedimiento almacenado en una carpeta como se muestra a continuación.
La estructura final como se muestra en el proyecto de la base de datos se verá como la siguiente imagen.
Por lo tanto, normalmente para cada versión y como desarrollador, realizaremos cambios en las tablas o procedimientos almacenados y Visual Studio se asegurará de que los scripts se modifiquen correctamente para garantizar que los cambios en la base de datos estén sincronizados con los scripts. Necesitamos publicar estos cambios o implementarlos continuamente de forma automatizada en la base de datos de SQL Server.
Para hacer esto, publique el archivo de perfil, que es un archivo XML y contiene toda la información, como el nombre de la base de datos, la cadena de conexión, etc., que se necesitan para implementar en SQL Server.
Una vez que el archivo XML esté disponible, usaremos la definición de compilación de Microsoft TFS para publicar los cambios automáticamente en la base de datos de SQL Server, ya sea en función de cada registro o en un horario.
En la instalación de SQL Server, hemos creado un base de datos, por ejemplo, Empleado que usaremos para publicar.
Ahora cree el archivo de perfil de publicación con Visual Studio. Haga clic derecho en el proyecto de la base de datos y seleccione Publicar.
Edite y seleccione la conexión a la base de datos de empleados en SQL Server.
Haga clic en el botón Guardar perfil como para guardar el perfil en el proyecto. Puedes ver un archivo llamado Employee.publish.xml es creado. También puede implementar manualmente los cambios haciendo clic en el botón Publicar, pero aquí vamos a automatizar los cambios para que se publiquen.
Selecciona el Cancelar opción por ahora después de que se guarde el perfil.
Abra el archivo en un editor XML y podrá ver la base de datos y las cadenas de conexión. Agregue una clave manualmente para Contraseña y mencione la contraseña para la identificación de usuario proporcionada. Esto es necesario para la conexión a la base de datos de SQL Server.
Dado que se puede acceder fácilmente a la contraseña, veremos cómo enmascarar la misma en la definición de compilación utilizando el complemento Reemplazar token.
|_+_|Además, asegúrese de seleccionar la versión correcta de SQL Server que se utilizará para este proyecto de base de datos, de lo contrario, los datos publicados tendrán errores. Haga clic con el botón derecho en el proyecto de la base de datos (Empleado) y seleccione Propiedades . Seleccione la versión adecuada y en este caso, es la versión 2014. Salvar (Ctrl + S) los cambios, una vez hechos.
Seleccione SQL Server 2014 como plataforma de destino y guarde la solución.
Para usar el proyecto en una definición de compilación de TFS, necesitamos compartir el proyecto con el repositorio de TFS. Haga clic derecho en la solución y seleccione Agregue solución al control de fuente. Ve a la Team Explorer -> Cambios pendientes y Registrarse la solución.
preguntas y respuestas de la entrevista de prueba de software para experimentados
El proyecto ahora debería estar disponible en TFS.
Crear una definición de compilación para automatizar la publicación
Ahora tenemos el proyecto de la base de datos registrado en TFS y todos los cambios realizados por el desarrollador en la tabla o los procedimientos almacenados se publicarán automáticamente en SQL Server sin ninguna intervención manual mediante la definición de compilación, ya sea en cada registro o según un cronograma. .
Primero, modifique el archivo XML de publicación para agregar un token para la clave de contraseña como se muestra a continuación. Verifique los cambios que se hayan realizado.
|_+_|En TFS, vaya al HUB de compilación y cree una definición de compilación vacía.
En la Definición de compilación, primero, agregue el Paso Reemplazar tokens y configure como se muestra en la imagen a continuación, ya que la variable de contraseña debe estar enmascarada. En caso de que necesite descargar el complemento para Reemplazar tokens, puede descargar e instalar el mismo para Microsoft TFS 2015 desde Tokens de reemplazo de GitHub
Vaya a la pestaña Variables y agregue la variable como en el archivo XML de publicación, es decir, DBPWD con un valor de la contraseña para el a ID de usuario. Clickea en el cerrar con llave y seleccione la casilla de verificación Permitir a la hora de la cola. Guarde la definición de compilación.
A continuación, agregue un paso de compilación de Visual Studio. Selecciona el Solución de Visual Studio y entrar en el Argumentos de compilación de MS como se muestra en la imagen de abajo para construir y publicar los cambios.
/ t: build / t: publish /p:SqlPublishProfilePath=Employee.publish.xml
Ponga en cola o active la compilación y verifique los cambios publicados en SQL Server. Para el proceso de compilación, se necesitaría un agente para ejecutarse en la máquina donde está instalado SQL Server.
Lectura recomendada sobre la instalación y configuración de agentes para Microsoft TFS 2015 @ Microsoft-TFS-2015
Abra SQL Server 2014 Management Studio, haga clic con el botón derecho en la base de datos, ejecute una consulta en la base de datos y busque los cambios que se publican después de la compilación que se ejecutó.
Como podemos ver, por primera vez las tablas y los procedimientos almacenados se publican mediante un proceso de compilación automatizado en TFS. Para mostrar la integración continua y el proceso de publicación automatizado en la base de datos, hagamos un cambio en la tabla y volvamos a ejecutar la compilación.
En la tabla, hemos agregado una columna más.
Vuelva a poner en cola la compilación y compruebe si los cambios se han publicado correctamente o no. La columna País ahora se agrega a la tabla. Consulte la imagen a continuación.
En caso de que desee ver la base de datos, las tablas, etc.desde Visual Studio, vaya a Ver-> Explorador de objetos de SQL Server para navegar por la base de datos que tiene una jerarquía similar a SQL Server.
Conclusión
Hemos visto una solución simple pero poderosa para publicar continuamente cambios en la base de datos en SQL Server usando Microsoft TFS 2015 en cada registro o según el cronograma de la compilación. Todas las tablas, los procedimientos almacenados o las vistas se agregan o actualizan en función de estos cambios y Visual Studio crea o altera los scripts SQL en consecuencia.
En pocas palabras, administrar grandes bases de datos y publicar los cambios se ha vuelto fácil con la ayuda de Visual Studio Database Projects y Microsoft Team Foundation Server.
Lectura recomendada
- Tutorial de TFS: TFS para automatizar la compilación, la prueba y la implementación de proyectos .NET
- Cómo utilizar Microsoft TFS para proyectos JAVA con Eclipse en DevOps
- Planificación ágil con Microsoft Team Foundation Server (TFS)
- Desarrollo de aplicaciones de base de datos Oracle: Oracle SQL y PL / SQL
- Tutorial de Oracle Database: ¿Qué es Oracle Database?
- MySQL Create Database: cómo crear una base de datos en MySQL
- Tutorial de creación de base de datos de MongoDB
- Diferencia entre SQL Vs MySQL Vs SQL Server (con ejemplos)