Histórico de Backup
Muitas vezes precisamos acompanhar o tamanho dos backups gerados.
Com isso podemos prever o espaço necessário para alocação dos backups.
Este script monta um pivot, com o tamanho médio do backup no mês.
As linhas são os Databases e as colunas os meses atual e anteriores.
Sendo Mês 0 (zero) o mês atual, Mês -1 o mês anterior e assim por diante.
DECLARE @DataInicial datetime;
SET @DataInicial = GetDate();
SELECT PVT.DatabaseName, PVT.[0], PVT.[-1], PVT.[-2], PVT.[-3], PVT.[-4], PVT.[-5], PVT.[-6], PVT.[-7], PVT.[-8], PVT.[-9], PVT.[-10], PVT.[-11], PVT.[-12]
FROM
(SELECT BS.database_name AS DatabaseName,DATEDIFF(mm, @DataInicial, BS.backup_start_date) AS MonthsAgo,CONVERT(numeric(10, 1), AVG(BF.file_size / 1048576.0)) AS AvgSizeMB
FROM msdb.dbo.backupset as BS INNER JOIN msdb.dbo.backupfile AS BF ON BS.backup_set_id = BF.backup_set_id
WHERE NOT BS.database_name IN ('master', 'msdb', 'model', 'tempdb') AND BF.[file_type] = 'D' AND BS.backup_start_date BETWEEN DATEADD(yy, -1, @DataInicial) AND @DataInicial
GROUP BY BS.database_name,DATEDIFF(mm, @DataInicial, BS.backup_start_date)
) AS BCKSTAT
PIVOT (SUM(BCKSTAT.AvgSizeMB)
FOR BCKSTAT.MonthsAgo IN ([0], [-1], [-2], [-3], [-4], [-5], [-6], [-7], [-8], [-9], [-10], [-11], [-12])
) AS PVT
ORDER BY PVT.DatabaseName;
Com estes valores podemos também criar gráficos no Excel para uma melhor visualização.
Sign up to our newsletter
Receive our latest updates about programming languages, software, database, books, ebooks, classes, jobs and more.