Usando o Assistente para Copiar Banco de Dados

O Assistente para Copiar Banco de Dados lhe permite migrar ou copiar bancos de dados e seus objetos facilmente de um servidor para outro, sem inatividade do servidor. Com este assistente, é possível fazer o seguinte:

  • Selecionar um servidor de origem e de destino.

  • Selecionar bancos de dados a migrar ou copiar.

  • Especificar o local de arquivo para os bancos de dados.

  • Criar logons no servidor de destino.

  • Copiar objetos, trabalhos, procedimentos armazenados definidos pelo usuário e mensagens de erro de suporte adicionais.

  • Agendar a migração ou cópia dos bancos de dados.

Além de copiar bancos de dados, é possível copiar os metadados associados, como, por exemplo, logons e objetos do banco de dados mestre exigidos por um banco de dados copiado.

ObservaçãoObservação

Os bancos de dados modelo, msdb e mestre não podem ser copiados ou migrados pelo Assistente para Copiar Banco de Dados.

Além disso, é possível migrar e copiar bancos de dados entre instâncias diferentes do SQL Server, bem como atualizar bancos de dados do SQL Server 2000 para SQL Server 2005 ou versões posteriores. O servidor de destino deve ser SQL Server 2005 ou posterior. Para obter mais informações, consulte "Atualizando o SQL Server usando o Assistente para Copiar Banco de Dados", mais adiante, neste tópico.

Questões a considerar

Considere as questões a seguir antes de usar o Assistente para Copiar Banco de Dados.

Área

Consideração

Permissões necessárias

Você deve ser membro da função de servidor fixa sysadmin em ambos os servidores, de origem e de destino.

Bancos de dados modelo, msdb e mestre

Os bancos de dados modelo, msdb e mestre não podem ser copiados ou migrados pelo Assistente para Copiar Banco de Dados.

Banco de dados no servidor de origem

Se você selecionar a opção Migrar, o assistente excluirá o banco de dados de origem automaticamente após migrá-lo. Se você selecionar Copiar, o Assistente para Copiar Banco de Dados não excluirá o banco de dados de origem.

Catálogos de texto completo

Se usar o método SQL Server Management Object para migrar o catálogo de texto completo, você terá que repopular o índice após a migração. Se você usar o método desanexar-e-anexar, os catálogos de texto completo terão que ser migrados manualmente. Para obter mais informações sobre como migrar catálogos de texto completo, consulte Movendo arquivos de banco de dados.

Iniciando o Assistente para Copiar Banco de Dados

No SQL Server Management Studio, no Pesquisador de Objetos, expanda Banco de Dados, clique com o botão direito do mouse em um banco de dados, aponte para Tarefase clique em Copiar Banco de Dados.

Copiando e migrando bancos de dados

Para usar o Assistente para Copiar Banco de Dados, é necessário especificar o seguinte:

  • O servidor de origem em que residem os bancos de dados a serem copiados.

  • O servidor de destino para o qual os bancos de dados serão copiados ou migrados.

  • Os bancos de dados a serem migrados ou copiados.

  • O nome do banco de dados de destino, se diferente do nome do banco de dados de origem.

    O nome do banco de dados de origem só poderá ser usado para o banco de dados copiado ou migrado se não houver conflitos de nome no servidor de destino. Se houver conflitos de nome, será preciso resolvê-los manualmente no servidor de destino para poder usar o nome do banco de dados de origem nele.

  • Outros objetos a serem copiados ou migrados; por exemplo, logons, objetos compartilhados do banco de dados mestre, trabalhos e planos de manutenção e mensagens de erro definidas pelo usuário.

  • A agenda da operação de cópia ou migração, se desejar executá-la mais tarde.

  • Se não for um administrador do sistema, você deverá especificar uma conta proxy do SQL Server Agent que tenha acesso ao subsistema de execução de Pacotes do Integration Services (SSIS).

O método desanexar-e-anexar desanexa o banco de dados, migra ou copia os arquivos .mdf, .ndf e .ldf do banco de dados e reanexa-os ao banco de dados em um novo local. Ao utilizar o método desanexar-e-anexar, para evitar perda ou inconsistência de dados, as sessões ativas não podem ser anexadas ao banco de dados que está sendo migrado ou copiado. Se houver alguma sessão ativa, o Assistente para Copiar Banco de Dados não executará a operação de migração ou cópia.

ObservaçãoObservação

No método SQL Server Management Objet, permitem-se sessões ativas porque o banco de dados nunca é colocado offline.

Ao migrar bancos de dados entre servidores ou unidades de disco diferentes, o Assistente para Copiar Banco de Dados os copia para o servidor de destino e verifica se estão online. Ao migrar bancos de dados entre duas instâncias no mesmo servidor, a operação de migração do sistema de arquivos é executada.

Administrando metadados ao restaurar em outra instância do servidor

Ao copiar um banco de dados para outra instância do servidor, para oferecer uma experiência consistente aos usuários e aplicativos, pode ser necessário recriar alguns ou todos os metadados do banco de dados, como logons e trabalhos, na outra instância de servidor. Para obter mais informações, consulte Gerenciando metadados ao disponibilizar um banco de dados em outra instância do servidor.

Atualizando o SQL Server usando o Assistente para Copiar Banco de Dados

Você pode usar o Assistente para Copiar Banco de Dados para atualizar o banco de dados de SQL Server 2000 para SQL Server 2005 ou posterior.

Também é possível simplificar a administração e o gerenciamento dos bancos de dados, integrando várias instâncias do SQL Server 2000 em uma única instância do SQL Server 2005 ou posterior ou em várias instâncias nomeadas em um mesmo computador.

Ao usar o método desanexar-e-anexar do Assistente para Copiar Banco de Dados para atualizar um banco de dados, certifique-se de não haver aplicativos ou serviços tentando acessar o banco de dados. Não use modo somente leitura; isso pode resultar em erro. Você pode renomear o banco de dados durante esta operação.

Observação importanteImportante

Após atualizar os bancos de dados a partir de uma versão anterior do SQL Server, execute sp_updatestats em relação ao banco de dados no servidor de destino para atualizar as estatísticas e assegurar um desempenho ótimo do banco de dados copiado.

Para atualizar para SQL Server usando o Assistente para Copiar Banco de Dados