Executando o arquivo em lote do trabalho do sql server

2

Eu quero criar um trabalho de backup no servidor sql. E eu quero executar o arquivo em lotes no trabalho. Eu só me pergunto a parte da execução do arquivo de lote do trabalho sql. Você tem alguma ideia?

Qualquer ajuda seria apreciada.

use MyDb
go

BACKUP DATABASE MyDb TO DISK = 'C:\BackUps\MyDb.bak' WITH differential 
go

-- Call my batch file (which will zip MyDb.bak file)
    
por uzay95 25.05.2010 / 14:32

2 respostas

1

Se você fizer isso como um trabalho do SQL Server Agent (do SSMS), será muito mais fácil chamar arquivos em lote. Apenas adicione uma etapa do tipo " Operating System (CmdExec) " e aponte para o arquivo .bat.

    
por 25.05.2010 / 15:58
0

Se você estiver usando, além da empresa do SQL Server 2008 (ou acima), então xp_cmdshell é a maneira de fazer isso, embora você tenha que ativá-lo primeiro com sp_configure.

Se você tiver a sorte de estar na empresa mssql 2008, o recurso de compactação de backup será o que você deveria estar usando.

Você pode querer fazer algo um pouco mais avançado e depois chamar um arquivo static.bat. Aqui estão algumas amostras úteis: Exemplo de script sql para compactar e transferir o arquivo de backup do banco de dados Como fazer backup do banco de dados SQL no formato .zip

    
por 25.05.2010 / 15:57