Hi,
Managers and customers are asking frequently what is the database size growth.
Database size growth grafic is very important for the new storage order. Because Enterprise companies want to purchase new storage in one or two years not every 2-3 month.
You can analyse the database size growth using backup history with following script.
DECLARE @startDate datetime; SET @startDate = 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, @startDate, 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, @startDate) AND @startDate GROUP BY BS.database_name ,DATEDIFF(mm, @startDate, 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;
Do you want to learn Microsoft SQL Server DBA Tutorials for Beginners, then read the following articles.
https://ittutorial.org/sql-server-tutorials-microsoft-database-for-beginners/