2017-02-23 3 views
1

J'ai un projet Visual Studio SSDT que j'utilise pour suivre toutes les modifications de la base de données et qui est conservé sous le contrôle de la source. À partir de Visual Studio, je peux le déployer sur mon serveur SQL local et sur notre environnement de test. Cependant, je ne peux pas me connecter à distance à notre serveur SQL de production pour des raisons de sécurité mais je peux RDP dans le serveur de production.Déploiement des modifications de la base de données SQL à partir d'un projet SSDT

Quelle est la meilleure façon de s'assurer que toutes les modifications de ma base de données sont déployées en production?

Je ne sais pas ce fait beaucoup de différence pour cette question, mais je me sers VS 2015 et SQL Server 2012.

+0

Je pense que vous aurez besoin d'accéder à l'environnement de production, sinon comment vous prévoyez de déployer ces modifications dans cet environnement. En ce qui concerne la "sécurité", vous avez une raison parfaitement valable d'avoir accès à l'environnement de prod, je vous suggère de parler à votre dba. –

Répondre

4

Vous pouvez générer un DACPAC sur l'environnement de production, puis copier ce DACPAC vers votre environnement de développement. À partir de là, vous pouvez utiliser SSDT pour comparer ce qui est dans le contrôle source avec ce qui est dans le DACPAC et générer des scripts DDL qui vont synchroniser votre base de production avec le contrôle source.

+0

Je voudrais également mettre à jour un "Publier le profil" qui est pour la production afin que vous puissiez l'utiliser pour pousser les changements de la bonne manière quand il frappe la production. Copiez le profil dacpac + publish, exécutez-le via SQLPackage et vous devriez être bon. Il y a même un paquet NuGet pour les bits SSDT maintenant si c'est un problème, bien que vous fassiez probablement mieux d'avoir une sorte de boîte de construction capable de gérer tout le travail de publication. Installez SSDT sur cette boîte. Le compte de service de cette boîte pourrait également avoir accès aux modifications appropriées ou l'équipe DBA peut les lancer. –