Criar e implantar os bancos de dados para um ambiente de produção ou de preparo

Os desenvolvedores de banco de dados executam tarefas de desenvolvimento individual, com cada desenvolvedor que trabalha em um separado o ambiente de desenvolvimento isolado (geralmente chamados de um modo seguro). O processo de implantação de uma versão testada uma o projeto de banco de dados em um teste ou produção ambiente é semelhante, mas com algumas diferenças chave.

Em geral, o acesso aos servidores de produção e de preparo é restrito. Os servidores podem conter outros bancos de dados que você deve preservar. Freqüentemente, o destino banco de dados já existe e pode conter dados também devem ser preservados. Você é menos provável que deseja modificar as configurações do servidor quando você implanta um banco de dados diferente quando você implanta um ambiente de desenvolvimento. Em alguns casos, mesmo se você tem permissão para implantar um banco de dados, talvez não tenha permissão para atualizar as configurações do servidor.

Configurando o seu projeto de banco de dados para implantação em um ambiente de produção ou de preparo

Nas propriedades da implantação do seu projeto de banco de dados, você pode configurar suas configurações para coincidir com os ambientes de servidor de preparo e de produção. Essas configurações são separadas de outros desenvolvedores configurações para seus ambientes de desenvolvimento isolado. Mantendo essa separação, você pode definir configurações de projeto para seus ambientes de teste e produção não é possível modificar a outros desenvolvedores. Cada configuração tem uma conexão de banco de dados de destino para um servidor de teste ou produção, o seu próprio arquivo de .sqldeployment e o seu próprio arquivo de .sqlcmdvars.

Você também pode configurar as configurações de estágios e de produção para preparar o script de implantação, mas ignore a implantação real. Seguindo essa estratégia, examine o script de implantação, faça as alterações necessárias e, em seguida, implantá-lo manualmente no ambiente de destino.

Detalhes de configuração de implantação

Antes de implantar o seu projeto para um ambiente de teste ou produção, você deve considerar os seguintes problemas:

  • Você provavelmente desejará usar o agrupamento do banco de dados de destino porque o ambiente de teste ou produção já está configurado.

  • Não quiser recriar o banco de dados sempre porque você poderia perder dados.

  • Talvez você queira implantar as propriedades do banco de dados se você estiver implantando um novo banco de dados. Se você estiver implantando atualizações de um banco de dados existente, você provavelmente não deseja implantar as propriedades do banco de dados, porque eles devem já estar configurados corretamente.

  • Você provavelmente desejará fazer backup do banco de dados como parte do processo de implantação, a menos que você já fez backup os objetos e dados como uma etapa separada do processo de implantação.

  • Você deseja bloquear a implantação se a perda de dados pode ocorrer porque você está atualizando um banco de dados geralmente contém os dados de produção.

  • Você talvez queira gerar instruções de SOLTAR para objetos que estão no banco de dados, mas não no projeto de banco de dados. Seu projeto de banco de dados deve representar a versão correta do teste e produção esquemas. Uma exceção pode ser se mova dados manualmente após a implantação de atualizações no banco de dados. Nesse caso, você não deseja descartar os objetos até depois de migrar os dados.

Variáveis do comando SQL

Quando você implanta um ambiente de teste ou produção, as variáveis devem ter valores que são apropriados para esse ambiente. Por exemplo, você pode precisar valores para os corretores de serviço ou certificados de serviço em seus ambientes de teste ou produção diferem dos valores que estão em seu ambiente de desenvolvimento. Especificando um arquivo de .sqlcmdvars diferentes para cada ambiente de destino, você pode evitar a necessidade de alterar os valores dessas variáveis, quando você altera os destinos de implantação. Essa prática também elimina a necessidade de definir o seu arquivo de .sqlcmdvars em termos de MSBuild variáveis de ter valores de configuração específicos. Você pode ter um arquivo de .sqlcmdvars diferente para cada configuração que você deseja implantar.

Implantando projetos de servidor

Um projeto de banco de dados pode conter definições para os objetos de banco de dados, para objetos de servidor ou para ambos. Na maioria dos ambientes, os desenvolvedores podem alterar os objetos de banco de dados, mas somente o administrador de banco de dados pode alterar os objetos de servidor. Você pode impor essa restrição colocando objetos de servidor em um projeto separado (conhecido como um o projeto de servidor). Em seguida, você pode restringir o controle de versão, de modo que somente os administradores podem alterar o projeto de servidor. Em um ambiente de teste ou produção, o projeto de servidor e seus objetos serão geralmente implantados separadamente do projeto que contém os objetos de banco de dados.

Você pode implantar um projeto de servidor usando os mesmos procedimentos que você pode usar para implantar um projeto de esquema.

A implantação de funções

As funções que você usa no seu banco de dados devem ser implantadas para todos os servidores aos quais você implantar o banco de dados. Quando você implanta um banco de dados em um servidor de teste ou produção, você deve definir usuários necessários e associar esses usuários com suas funções apropriadas.

Implantação de linha de comando

Você pode implantar um projeto de banco de dados em um prompt de comando em um computador no qual Visual Studio Premium não é instalado se os pré-requisitos a seguir estão instalados:

  • Microsoft.NET Framework versão 3.5 Service Pack 1

  • SQL ServerManagement Objects (SMO)

    Esses devem ser instalados em qualquer computador no qual SQL Server está instalado.

Além de para esses pré-requisitos, você deve também transferir os seguintes arquivos desse computador, talvez, copiando-os primeiro em uma unidade de barramento serial universal (USB):

  • A saída de construção do seu projeto de banco de dados (de depuração ou de varejo)

  • O conteúdo da pasta Deploy paraVisual Studio Premium

    Isso geralmente podem ser encontrados em [arquivos de programa] \VSTSDB\Deploy.

  • Os assemblies para SQL Server Compact Edition

Depois de instalar os pré-requisitos e transferir os arquivos, você pode implantar o projeto de banco de dados (no formato do arquivo .dbschema) para um banco de dados de destino.

Tarefas comuns

A tabela a seguir, você encontrará descrições de tarefas comuns que oferecem suporte a esse cenário e links para obter mais informações sobre como você pode concluir com êxito essas tarefas.

Tarefa 

Tópicos de suporte.

Começar com a compilação e implantação: Antes de configurar, construir e implantar seu primeiro projeto de banco de dados, convém entender como usar os projetos de banco de dados em um ambiente de equipe. Você também pode obter uma melhor compreensão do processo de compilação e implantação. Além disso, você pode aprender sobre as propriedades e configurações que você pode usar para controlar como o seu projeto é construído e implantado.

Implante somente os objetos de conclusão: Você pode excluir os arquivos que contêm as definições de os objetos de banco de dados que você não está pronto para implantar ou testar.

Configure o seu projeto de banco de dados para o processo de compilação: Você pode configurar as configurações que controlam como o seu projeto de banco de dados é criado. Por exemplo, você pode especificar o caminho de saída.

Configure o seu projeto de banco de dados para a implantação:

  • Você pode configurar a implantação de qualquer configuração de compilação ao associá-la um banco de dados de destino, um arquivo que contém detalhes de implantação e um arquivo que contém variáveis que afetam a implantação.

  • Você pode controlar os detalhes da implantação, modificando o arquivo que contém detalhes de implantação.

  • Você pode personalizar as variáveis para usar certificados de serviço ou de agentes de serviço diferentes em cada implantação.

  • Você pode controlar se as propriedades do banco de dados são atualizadas quando você implantar o banco de dados e os valores dessas propriedades devem ter.

Preencha as tabelas de referência ou de pesquisa: Você pode adicionar dados de referência tabelas quando você implanta seu projeto de banco de dados. Você pode optar por fazer isso para tabelas que contêm dados que mudam com freqüência, como, por exemplo, informações da transportadora.

Crie seu projeto de banco de dados: Você pode construir seu projeto de banco de dados Visual Studio ou em um prompt de comando com MSBuild para se preparar para a implantação.

Implante o seu projeto de banco de dados: Você pode implantar seu projeto de banco de dados no Visual Studio usando MSBuild como parte de um teste de unidade de banco de dados é executado, ou usando o VSDBCMD em um prompt de comando para atualizar o banco de dados de destino ou servidor.

Além disso, você também pode implantar usando Team Foundation Build se você definir um fluxo de trabalho personalizado.

Solucionar problemas: Você pode saber mais sobre como solucionar os problemas mais comuns em torno da criação e implantação de um projeto de banco de dados.

Cenários relacionados

Consulte também

Conceitos

Gravar e alterar o código do banco de dados

Criar e modificar o banco de dados e objetos de servidor