É possível compactar um arquivo de backup para .zip (ou outro) em um procedimento armazenado chamado de um plano de manutenção?
Meu plano de manutenção contém estas etapas:
verifique o banco de dados (consistência, re_index, talvez não seja importante)
backup completo
para verificar o arquivo de backup usando restore_verifyonly
encolher banco de dados
Após restore_verifyonly/shrink database, desejo compactar este arquivo.
A compactação de backup foi introduzida no SQL 2008 Enterprise e no SQL2008R2 e posterior, adicionada à Standard Edition.
Ao criar um backup, você pode especificar a palavra-
WITH COMPRESSION
chave, o que garantirá que o tamanho do backup do banco de dados seja compactado para um tamanho aproximadamente semelhante ao de um arquivo de backup 'normal' compactado.Para SQL2005 ou mais antigo, a melhor maneira realmente (além de usar uma ferramenta específica como RedGate) é garantir que
xp_cmdshell
esteja habilitado nas instâncias e, em seguida, usar uma linha de comando para compactar usando, por exemplo, WinRar.Eu uso um arquivo cmd que se parece com isto:
Você pode então executar este arquivo cmd de suas instâncias 2000/2005. Você também pode brincar com a passagem
%1
de variáveis -type para o arquivo cmd, se seus nomes de arquivo não forem genéricos.