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
Crespi!
Valeu pela ajuda, os dois scripts me ajudaram muito.
Abs.