Partilhar via


Tarefa Transferir Banco de Dados

A tarefa Transferir Banco de Dados transfere um banco de dados do SQL Server entre duas instâncias do SQL Server. Ao contrário das outras tarefas que somente transferem objetos do SQL Server por cópia, a tarefa Transferir Banco de Dados pode copiar ou mover um banco de dados. A tarefa pode copiar um banco de dados entre instâncias do SQL Server 2000, do SQL Server ou um de cada. Essa tarefa também pode ser usada para copiar um banco de dados dentro do mesmo servidor.

O banco de dados pode ser transferido usando o modo online ou offline. Quando você usa o modo online, o banco de dados permanece anexado e é transferido por meio do SQL Management Object (SMO) para copiar os objetos do banco de dados. Quando você usa o modo offline, o banco de dados é desanexado, os arquivos do banco de dados são copiados ou movidos e o banco de dados é anexado ao destino após a conclusão bem-sucedida da transferência. Se o banco de dados for copiado, ele será novamente anexado de forma automática à fonte, se a cópia for bem-sucedida. No modo offline, o banco de dados é copiado mais rapidamente, mas o banco de dados fica indisponível aos usuários durante a transferência.

O modo offline requer que você especifique os compartilhamentos de arquivos de rede nos servidores de origem e de destino que contêm os arquivos de banco de dados. Se a pasta for compartilhada e acessada pelo usuário, você pode fazer referência ao compartilhamento de rede usando a sintaxe \\nome_do_computador\Arquivos de Programas\minha_pasta\. Caso contrário, você deverá usar a sintaxe \\nome_do_computador\c$\Arquivos de Programas\minha_pasta\. Para usar a última sintaxe, o usuário deve ter acesso à gravação para os compartilhamentos de rede de origem e destino.

Você pode especificar se a tarefa tentará se anexar novamente ao banco de dados de origem, se a transferência do banco de dados falhar.

A tarefa Transferir Banco de Dados também pode ser configurada para permitir a sobregravação de um banco de dados de destino que tenha o mesmo nome, substituindo o banco de dados de destino.

O banco de dados de origem também pode ser renomeado como parte do processo de transferência. Se desejar transferir um banco de dados para uma instância de destino do SQL Server que já contenha um banco de dados com o mesmo nome, a renomeação do banco de dados de origem permitirá a transferência do banco de dados. Entretanto, os nomes dos arquivos do banco de dados também devem ser diferentes; se já existirem arquivos com os mesmos nomes no destino, a tarefa falhará.

Quando copiar um banco de dados, ele não poderá ser menor que o banco de dados modelo do servidor de destino. Você pode aumentar o tamanho do banco de dados para fazer a cópia ou reduzir o tamanho do modelo.

No tempo de execução, a tarefa Transferir Banco de Dados conecta-se aos servidores de origem e de destino usando um ou dois gerenciadores de conexões SMO. Quando você cria uma cópia de um banco de dados no mesmo servidor, somente um gerenciador de conexões SMO é exigido. Os gerenciadores de conexões SMO são configurados separadamente da tarefa Transferir Banco de Dados e, em seguida, referenciadas na tarefa Transferir Banco de Dados. Os gerenciadores de conexões SMO especificam o servidor e o modo de autenticação a serem usados quando a tarefa acessar o servidor. Para obter mais informações, consulte Gerenciador de conexões SMO.

Transferindo banco de dados entre versões do SQL Server

A tarefa Transferir Banco de Dados oferece suporte SQL Server 2000 e SQL Server. Ela pode transferir um banco de dados entre instâncias do SQL Server 2000, do SQL Server e de uma instância do SQL Server 2000 para uma instância do SQL Server.

Eventos

A tarefa Transferir Banco de Dados não informa o progresso incremental da transferência de mensagem de erro; informa somente conclusão 0% e 100 %.

Valor de execução

O valor da execução, definido na propriedade ExecutionValue da tarefa, retorna o valor 1, porque em contraste com outras tarefas de transferência, a tarefa Transferir Banco de Dados pode transferir somente um banco de dados.

Ao atribuir uma variável definida pelo usuário à propriedade ExecValueVariable da tarefa Transferir Banco de Dados, as informações sobre a transferência de mensagem de erro podem se tornar disponíveis a outros objetos no pacote. Para obter mais informações, consulte Variáveis do Integration Services e Usando variáveis em pacotes.

Entradas de log

A tarefa Transferir Banco de Dados inclui as seguintes entradas de log personalizadas:

  • SourceSQLServer    Esta entrada de log lista o nome do servidor de origem.

  • DestSQLServer    Esta entrada de log lista o nome do servidor de destino.

  • SourceDB    Esta entrada de log lista o nome do banco de dados que é transferido.

Além disso, uma entrada de log para o evento OnInformation é gravada quando o banco de dados de destino é substituído.

Segurança e permissões

Para transferir um banco de dados usando o modo offline, o usuário que executa o pacote deve ser um membro da função servidor sysadmin.

Para transferir um banco de dados usando o modo online, o usuário que executa o pacote deve ser um membro da função servidor sysadmin ou proprietário do banco de dados (dbo) do banco de dados selecionado.

Configurando a tarefa Transferir Banco de Dados

Você pode definir propriedades por meio do Designer SSIS ou programaticamente.

Para obter mais informações sobre as propriedades que podem ser definidas no Designer do SSIS, clique em um dos seguintes tópicos:

Para obter mais informações sobre como definir essas propriedades no Designer SSIS, clique no seguinte tópico:

Configurando programaticamente a tarefa Transferir Banco de Dados

Para obter mais informações sobre como definir programaticamente essas propriedades, clique no seguinte tópico:

Ícone do Integration Services (pequeno) Fique atualizado com o Integration Services

Para obter os mais recentes downloads, artigos, exemplos e vídeos da Microsoft, bem como soluções selecionadas da comunidade, visite a página do Integration Services no MSDN ou TechNet:

Para receber uma notificação automática das atualizações, assine os feeds RSS disponíveis na página.