Estava passando pelo fórum MSDN do SQL Server quando vi um post com a seguinte dúvida, como realizar backup diariamente de forma automatizada do SQL Server na versão Express, respondi no fórum a forma de como poderia ser feito e resolvi escrever um post de como fazer.
Precisei fazer isso para um cliente e até hoje funciona perfeitamente, vamos ao que nos trouxe até aqui.
Primeiramente vamos criar um arquivo .bat, sim isso mesmo.
Nosso arquivo REALIZABKP.bat deverá ter o seguinte conteúdo:
[sourcecode language=”sql”]
sqlcmd -S NOMESERVER -U sa -P senha.12345 -i "C:BackupBACKUPDIARIO.sql"
[/sourcecode]
Vamos as explicações de cada um dos parâmetros.
sqlcmd: Utilitario de scripts via linha de comando Leia mais.
-S: O servidor onde será executado o script via linha de comando.
-U: Usuário que iremos conectar para executar o script.
-P: Senha do usuário que iremos utilizar.
-i: Arquivo de entrada ou seja onde terá nossa regra do que deve ser feito.
Vamos a segunda parte onde iremos criar um arquivo chamado ‘BACKUPDIARIO.sql’, o mesmo terá o seguinte conteúdo:
[sourcecode language=”sql”]
— Variáveis utilizadas para gerar backup.
DECLARE @destino VARCHAR(50), @banco VARCHAR(50)
— O select abaixo pega qual banco iremos realizar o backup,
–caso exista mais de um em nossa instância.
SELECT @banco = NAME FROM SYS.DATABASES WHERE NAME = ‘banco_de_dados’;
— Informamos o destino onde será salvo nosso backup e qual nome o mesmo será salvo.
SET @destino = ‘C:BackupDIARIO’ + @banco + REPLACE(CONVERT(VARCHAR(10), GETDATE(), 3), ‘/’, ”) + REPLACE(CONVERT(VARCHAR(8), GETDATE(), 108), ‘:’,”) + ‘.BAK’;
— Comando para realizar o backup.
BACKUP DATABASE @banco
— Salvar no disco.
TO DISK = @destino
[/sourcecode]
Caso queira realizar teste, basta executar o arquivo REALIZABKP.bat que será feito o backup do banco de dados desejado.
Por fim, basta criar no agendador de tarefa do windows uma tarefa para executar o REALIZABKP.bat toda vez que o arquivo for executado será feito um backup do seu banco de dados.
Com isso já podemos colocar nossa criatividade em prática para melhorar e adequar essa rotina a sua necessidade.
Se por ventura eu deixei a senha do sql server em branco sem senha como funciona???
Boa tarde,
Se eu quiser sempre substituir o backup existente na pasta de arquivos, como posso alterar o script?
Desde já, muito obrigada.
Sim, com certeza.