Advertisement
Guest User

Untitled

a guest
Jul 4th, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.81 KB | None | 0 0
  1. USE T4FAT;
  2. GO
  3. BACKUP DATABASE T4FAT
  4. TO DISK = 'C:DropboxMF-YCORNBK_MFT4FAT.Bak'
  5. WITH FORMAT,
  6. MEDIANAME = 'T4FATBackups',
  7. NAME = 'Full Backup of T4FAT';
  8. GO
  9.  
  10. USE T4FAT;
  11. GO
  12. BACKUP DATABASE T4FAT
  13. TO DISK = 'C:DropboxMF-YCORNBK_MFT4FAT.Bak'
  14. WITH FORMAT,
  15. MEDIANAME = 'T4FATBackups',
  16. NAME = 'Full Backup of T4FAT';
  17. GO
  18.  
  19. DECLARE @name VARCHAR(150) -- Nome do Database
  20. DECLARE @path VARCHAR(256) -- Caminho do arquivo de backup
  21. DECLARE @fileName VARCHAR(256) -- Arquivo do backup
  22. DECLARE @dia VARCHAR(10) -- dia do backup
  23. SET @dia = CONVERT (varchar,GETDATE(), 112) --formata o dia no padrao iso (yymmdd)
  24.  
  25. -- Define caminho de destino do backup
  26. SET @path = 'C:DropboxMF-YCORNBK_MFCONSULTIN1'
  27.  
  28. -- Cria um cursor para selecionar todas as databases,
  29. -- excluindo model, msdb e tempdb
  30. DECLARE db_cursor CURSOR FOR
  31. SELECT name
  32. FROM master.dbo.sysdatabases
  33. WHERE name NOT IN ('model','msdb','tempdb')
  34.  
  35. -- Abre o cursor e faz a primeira leitura
  36. OPEN db_cursor
  37. FETCH NEXT FROM db_cursor INTO @name
  38.  
  39. -- Loop de leitura das databases selecionadas
  40. WHILE @@FETCH_STATUS = 0
  41. BEGIN
  42. SET @fileName = LTRIM( @path + @name + @dia + '.bak') --remove os espacos
  43. -- Executa o backup para o database
  44. BACKUP DATABASE @name TO DISK = @fileName WITH FORMAT;
  45.  
  46. FETCH NEXT FROM db_cursor INTO @name
  47. END
  48.  
  49. -- Libera recursos alocados pelo cursor
  50. CLOSE db_cursor
  51. DEALLOCATE db_cursor
  52.  
  53. @echo off
  54. title "Titulo da Janela"
  55. color b
  56.  
  57. SET date=
  58. for /F "tokens=1-3 delims=/ " %%a in ('date /T') do set date=%%c%%b%%a
  59.  
  60. SET time=
  61. for /F "tokens=1-3 delims=: " %%a in ('time /T') do set time=%%c%%a%%b
  62.  
  63. REM **Variavel que vai guardar a data e hora no backup.
  64. SET DATAATUAL=_%date%-%time%
  65.  
  66. REM **Nome do Backup para identificar caso faça backups de vários bancos.
  67. SET NOMEBACKUP=Nome
  68.  
  69. REM **nome ou ip do computador que está com o banco de dados.
  70. SET SQLHOST=localhost
  71.  
  72.  
  73. SET SQLDATABASE=nomeDoBancoDeDados
  74.  
  75. REM **Usuário da base de dados
  76. SET SQLUSER=user
  77.  
  78. REM **Senha da base de dados
  79. SET SQLPASSWORD=pass
  80.  
  81. REM **Diretório de destino do arquivo de Backup
  82. SET DESTBACKUP=C:
  83.  
  84.  
  85. @echo Efetuando o backup do banco de dados, aguarde...
  86. sqlcmd -U %SQLUSER% -P %SQLPASSWORD% -S %SQLHOST% -d %SQLDATABASE% -Q "backup database %SQLDATABASE% to disk='%DESTBACKUP%%NOMEBACKUP%%SQLDATABASE%%DATAATUAL%.bak'" > %DESTBACKUP%%NOMEBACKUP%%SQLDATABASE%%DATAATUAL%.log
  87.  
  88. 7za a "%DESTBACKUP%%NOMEBACKUP%%SQLDATABASE%%DATAATUAL%.7z" "%DESTBACKUP%%NOMEBACKUP%%SQLDATABASE%%DATAATUAL%.bak"
  89.  
  90. if exist "%DESTBACKUP%%NOMEBACKUP%%SQLDATABASE%%DATAATUAL%.bak" del /q "%DESTBACKUP%%NOMEBACKUP%%SQLDATABASE%%DATAATUAL%.bak"
  91.  
  92. REM *Apaga backups mais antigos que 31 dias, se quiser alterar é só mudar a quantidade de dias.
  93. forfiles -p %DESTBACKUP% -s -d -31 -m *.7z -c "cmd /c del /f /q "@path" "
  94.  
  95. timeout /t 5
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement