Temos um banco de dados sql-server 2005 que transferimos regularmente do site do cliente para o nosso. Isso leva muito tempo porque não temos uma conexão direta e temos que transferir o arquivo pelo aplicativo de transferência de arquivos baseado na web. O banco de dados tem atualmente cerca de 10 GB, no entanto, não precisamos de todos os dados - a maioria está em tabelas de auditoria e tabelas que contêm valores calculados que podem ser gerados novamente.
Procurei criar um grupo de arquivos para manter as tabelas de auditoria e esperava poder apenas fazer backup e restaurar o grupo de arquivos primário. Posso fazer backup bem, mas ao restaurar recebo um erro dizendo que não estou restaurando para o mesmo banco de dados. É possível restaurar parte de um banco de dados para um servidor diferente usando grupos de arquivos? Existe uma maneira melhor de fazer isso?
Para ser honesto, isso é mais fácil:
Eu não me incomodaria com grupos de arquivos por causa da complexidade adicional que você observou ...
Pela maneira como você fala em precisar apenas do grupo de arquivos primário, parece-me que você deseja apenas a estrutura do banco de dados e uma quantidade muito pequena de dados. Sugiro que, se você quiser apenas uma atualização da estrutura do banco de dados (objetos, tabelas, etc.), simplesmente faça o script do banco de dados com todos os objetos. Isso pode ser feito de forma rápida e fácil com o PowerShell.
Em seguida, os dados de que você realmente precisa, que não podem ser regenerados, basta exportá-los (um script do PowerShell também pode fazer isso). Tenho certeza de que o arquivo de exportação pode ser compactado em um tamanho pequeno e transferido pela conexão para o seu site.
É claro que, assim como esta, a sugestão @gbn pode ser roteirizada, então cabe a você determinar qual opção leva menos tempo.
Isso é possível usando a restauração fragmentada . Os objetos e grupos de arquivos do banco de dados de origem devem ser organizados de forma a suportar isso. O RESTORE requer palavras-chave específicas adicionais.
Embora demore um pouco para se acostumar com o conceito, a quantidade de scripts a ser implementada não é maior do que para outras soluções sugeridas.
Você não pode fazer backup de tabelas específicas em um arquivo .bak, pode exportá-las para csv ou fazer script delas ou usar bcp para colocá-las em um arquivo.
O que você pode fazer se quiser fazer backup de tabelas específicas (e elas são sempre as mesmas) é movê-las para um grupo de arquivos separado e fazer backup desse grupo de arquivos.
Consulte Fazer backup de arquivos e grupos de arquivos para obter a documentação.
Clique com o botão direito do mouse e gere scripts, depois altere o nome do banco de dados para target (USE db).
explicado aqui