A melhor maneira de fazer backup de um banco de dados do SQL Server todas as noites?

8

Qual é a melhor maneira de fazer backup de um banco de dados do SQL Server 2005 todas as noites?

Estou procurando uma solução / estratégia que faça o arquivo de backup do banco de dados e coloque-o em um diretório "de saída". Queremos que nosso software FTP o transfira para um servidor externo.

Alguma sugestão sobre como fazer isso funcionar como desejado?

Urda
fonte
Você pode fazer isso facilmente com a ajuda do SqlBak sqlbak.com. Basta definir uma programação de backup.
Olek Nilson

Respostas:

9

Você pode fazer isso de graça. Crie um plano de manutenção para fazer backup do banco de dados, você pode definir o local que deseja enviar o arquivo e adicionar uma tarefa de limpeza.

Se for expresso e você não puder usar planos de manutenção, use esta ferramenta para executar a tarefa de backup automaticamente: http://www.codeplex.com/ExpressMaint e use um script VB simples para limpar a pasta como uma tarefa agendada do Windows

Em seguida, crie um script para enviar por FTP os logs para casa todas as noites como tarefa agendada do Windows.

Fazemos exatamente a mesma coisa em uma de nossas configurações.

Se o servidor externo estiver em uma VPN constante com o servidor de banco de dados, você poderá DFS a pasta de backup.

EDIT: Se você deseja fazer isso como backup completo "extra" em bks locais, precisará usar uma instrução TSQL para a tarefa de backup no plano e lançar "COPY_ONLY" para o backup, para que não haja diferenciais. Não use isso como referência, mas seu local fica cheio conforme o planejado.

Malnizzle
fonte
Este parece ser o caminho a percorrer. Vou dar uma olhada, mas parece que é o que eu queria.
Urda
certeza coisa, deixe-nos saber como ele vai =)
Malnizzle
ok, como você faz backup do componente OLAP?
Sistemas de engenheiro sênior de
2

Um script fácil (usando um procedimento não documentado) está abaixo. Isso o colocará no diretório de backup padrão, mas se sua conta de serviço tiver direitos para outros diretórios, você poderá adicioná-lo antes do último ponto de interrogação. O "init" sobrescreve o último backup do banco de dados para não encher a unidade.

set quoted_identifier on

exec sp_MSforeachdb "
if ( '?' not in ( 'tempdb' ) )
begin
    backup database [?] to disk = '?.bak' with init, stats = 10
end
"
Jason Cumberland
fonte
1

O Backup Exec System Recovery fará o backup e o envia para FTP externamente, a qualquer momento

Dave M
fonte
1

O logshipping também faz isso bem.

Nai
fonte