Script para backup de todos os bancos do servidor SQL Server

Pessoal,

Algumas vezes precisamos gerar um backup de todos os bancos de dados, sem utilizar Maintenance Plans ou até mesmo sem acesso ao Management Studio.

Se passarem por alguma situação similar a essa, o script abaixo poderá ser útil.

USE Master

DECLARE @lComando VARCHAR(8000)

SELECT  @lComando = COALESCE(@lComando + 'Backup Database ' + [Name] +
                             ' To Disk = ''D:BackupDBSQLServer2008' +
                             [Name] +
                             '.bak'' WITH NOFORMAT, NOINIT, SKIP, NOREWIND, 
                              NOUNLOAD, COMPRESSION;' +
                             CHAR(13), '')
FROM    Master..Sysdatabases
WHERE   [Name] NOT IN ( 'tempdb' ) AND
        DATABASEPROPERTYEX([Name], 'Status') = 'online'

PRINT @lComando

--Execute(@lComando)

Esse script consulta a “Sysdatabases” e para cada item encontrado gera uma string com o comando de backup, logo eu desconsiderei na clausula “where” os itens existente no “tempdb”.

Da forma como o script foi publicado ele irá imprimir o conteúdo na tela, para executar o backup tire o comentário da ultima linha.

Vale ressaltar que esse comando de backup esta com os parâmetros pertinentes a minha necessidade, antes de executá-lo recomendo avaliar o caminho do backup e os parâmetros passados pelo comentado.

Abraço, Rodrigo

Um comentário em “Script para backup de todos os bancos do servidor SQL Server

Deixe uma resposta

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.