ITPub博客

首页 > IT职业 > IT生活 > 如何找到SQL Server数据库历史增长信息

如何找到SQL Server数据库历史增长信息

IT生活 作者:wengwb 时间:2021-09-09 09:10:59 0 删除 编辑

    很多时候,在我们规划SQL Server数据库的空间,或向存储方面要空间时,都需要估算所需申请数据库空间的大小,估计未来最简单的办法就是看过去的趋势,这通常也是最合理的方式。

    通常来讲,一个运维良好的数据库都需要做定期基线(baseline),有了基线才会知道什么是正常。一个简单的例子例如,一些人的血压平常偏低,那么80的低压对他来说就是不正常了。但现实情况是大多数系统并没有采集基线的习惯,因此在需要规划空间想要看历史增长时,就没有过去精确的数据了。

    一个解决办法就是通过查看历史备份的大小来看过去的数据增长趋势,数据库备份的时候不会备份整个文件,而只备份在FPS页中标记已经分配的页,可以出现数据库是20G,但备份只有3G的情况,因此数据库备份可以作为查看数据增长的依据。

    数据库在每次备份时都会在msdb.dbo.backupset表中记录备份的相关信息,因此可以通过下述查看来聚合历史备份信息,从而对比数据库的增长:

SELECT
[database_name] AS "Database",
DATEPART(month,[backup_start_date]) AS "Month",
AVG([backup_size]/1024/1024) AS "Backup Size MB"
FROM msdb.dbo.backupset
WHERE
 [database_name] = N'Adventureworks2012'
AND [type] = 'D'
GROUP BY [database_name],DATEPART(mm,[backup_start_date]);

   注:SQL Server 2008之后引入了基于策略的管理,该策略会默认建立一个作业,如图2所示,该作业每天2点运行,会按照策略(历史记录保留天数,如图3所示)清理过期的历史记录。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2216/viewspace-2800055/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: Node.js基础之模块
请登录后发表评论 登录
全部评论

注册时间:2019-04-16

  • 博文量
    63
  • 访问量
    511