Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Увеличаване на размера на базата данни на SQL Server с помощта на хронология на архивиране

Здравей,

Мениджърите и клиентите често питат какъв е ръстът на размера на базата данни.

Графиката за увеличаване на размера на базата данни е много важна за новата поръчка за съхранение. Тъй като корпоративните компании искат да купуват ново хранилище след една или две години, а не на всеки 2-3 месеца.

Можете да анализирате нарастването на размера на базата данни, като използвате историята на архивирането със следния скрипт.

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;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Топ 10 често задавани въпроси относно мониторинга на производителността на SQL Server

  2. Вземете текущата часова зона на сървъра в SQL Server (T-SQL)

  3. Бази данни на SQL Server Статистика за използване на процесора

  4. Основи и използване на NOLOCK намек в SQL Server

  5. Оператор амперсанд (&) в клауза WHERE на SQL Server