Backup com Paralelismo SQL Server

Dica de hoje é sobre como acelerar seus backups com paralelismo, lembrando de monitorar e verificar se sua CPU estara sendo sobrecarregada a depender da quantidade de threads usadas no backup, neste exemplo estou usando 10 threads. Segue abaixo script que utilizo e prints mostrando a execução do paralelismo.

1- Script de backup:

DECLARE @CMD NVARCHAR(4000),
        @BANCO NVARCHAR(2000),
        @DESCRICAO NVARCHAR(200), 
        @DT VARCHAR(200),
        @CAMINHO VARCHAR(400)
 
SELECT  @BANCO = 'TopAcesso', -- BANCO
        @DESCRICAO = 'Backup Full '+@BANCO, -- DESCRIÇÃO DO BACKUP
        @DT = REPLACE(REPLACE(REPLACE(REPLACE((CONVERT(nvarchar(30), GETDATE(), 120)),' ','_'),':','.'),'.','_'),'-','_'), -- DATA E HORA DO BACKUP
        @CAMINHO = 'E:\temp\' -- LOCAL DO BACKUP
 
set @cmd = '
 BACKUP DATABASE ['+@BANCO+'] TO  
   DISK = N'+''''+@CAMINHO+@BANCO+'_FULL_'+CONVERT(varchar,@DT,112)+'_01.bak''
  ,DISK = N'+''''+@CAMINHO+@BANCO+'_FULL_'+CONVERT(varchar,@DT,112)+'_02.bak'' 
  ,DISK = N'+''''+@CAMINHO+@BANCO+'_FULL_'+CONVERT(varchar,@DT,112)+'_03.bak'' 
  ,DISK = N'+''''+@CAMINHO+@BANCO+'_FULL_'+CONVERT(varchar,@DT,112)+'_04.bak'' 
  ,DISK = N'+''''+@CAMINHO+@BANCO+'_FULL_'+CONVERT(varchar,@DT,112)+'_05.bak'' 
  ,DISK = N'+''''+@CAMINHO+@BANCO+'_FULL_'+CONVERT(varchar,@DT,112)+'_06.bak'' 
  ,DISK = N'+''''+@CAMINHO+@BANCO+'_FULL_'+CONVERT(varchar,@DT,112)+'_07.bak'' 
  ,DISK = N'+''''+@CAMINHO+@BANCO+'_FULL_'+CONVERT(varchar,@DT,112)+'_08.bak'' 
  ,DISK = N'+''''+@CAMINHO+@BANCO+'_FULL_'+CONVERT(varchar,@DT,112)+'_09.bak'' 
  ,DISK = N'+''''+@CAMINHO+@BANCO+'_FULL_'+CONVERT(varchar,@DT,112)+'_10.bak'' 
 WITH NOFORMAT, NOINIT,  NAME = N'+''''+@DESCRICAO+''''+', SKIP, NOREWIND, NOUNLOAD, COMPRESSION,CHECKSUM, STATS = 5'
 EXEC (@cmd)
SQL

2 – Comprovando que o backup esta realmente sendo feito usando paralelismo com 10 threads:

select spid,status,cmd from sys.sysprocesses where cmd='Backup database';
SQL

3 – Formato e nome do backup:

Leave a Reply

Your email address will not be published. Required fields are marked *

search previous next tag category expand menu location phone mail time cart zoom edit close