首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >监视Server数据文件中的空闲空间

监视Server数据文件中的空闲空间
EN

Database Administration用户
提问于 2015-04-09 13:25:34
回答 3查看 15.2K关注 0票数 9

我手动调整了mdf/ndf文件的大小,以避免SQL Server数据库上的自动增长操作。由于文件更大,磁盘分区上的空闲空间很小,系统管理员不断提醒我,我的空间快用完了。

因为我调整了它们的大小,所以在数据文件中有很多空闲空间,但是人们不会注意到它在查看文件大小/磁盘空闲空间。

如何监视数据文件的实际%使用情况?我更喜欢使用perfmon计数器。我猜想,当文件真正耗尽空间时,Server将无法分配足够的空间并将崩溃。

EN

回答 3

Database Administration用户

发布于 2015-04-09 13:40:05

当您可以从简单的查询中获得性能计数器时,不确定为什么要为此使用性能计数器。事实上,虽然您可以从性能计数器(Log File(s) Size (KB) / Log File(s) Used Size (KB))获得有关日志文件的信息,但是在数据文件中使用多少空间没有这样的计数器。

代码语言:javascript
运行
复制
;WITH f AS 
(
  SELECT name, size = size/128.0 FROM sys.database_files
),
s AS
(
  SELECT name, size, free = size-CONVERT(INT,FILEPROPERTY(name,'SpaceUsed'))/128.0
  FROM f
)
SELECT name, size, free, percent_free = free * 100.0 / size
FROM s;
票数 11
EN

Database Administration用户

发布于 2015-06-08 09:35:53

仅仅是在Aaron和Kin的答案的基础上,您可以使用perf计数器来完成,但是可以使用用户可设置计数器之一。

我会:

  • 创建一个存储过程,使用Aaron的查询获取单个文件中的空闲空间,或循环遍历所有文件,并获得感兴趣的min/max值
  • 创建一个将定期运行存储的proc的作业。

如果您想得到适当的通知:

  • 创建一个具有有效电子邮件地址的操作员/使用现有的操作员
  • 根据该用户计数器创建一个警报,通知前面的操作员(确保您不会收到大量电子邮件--在回复之间设置一个延迟)。

注意事项如下:

  • 您只有10个可设置的计数器。
  • 他们没有有意义的名字
  • 你需要有一个笨重的job+proc+alert才能有一张好照片

但它们可以在Perfmon或其他类似工具中使用。

票数 5
EN

Database Administration用户

发布于 2016-10-13 14:27:56

此外,还有一个监视数据文件大小的简单警报设置:

附加的“低日志空间警报”将监视事务日志文件的空闲空间(自动增长已关闭):

票数 3
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/97412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档