我在单个服务器上安装了TFS,并且磁盘空间不足。 (我们已经使用该实例大约两年了。)

查看SQL Server中的表,似乎罪魁祸首是tbl_content表,它的大小为70 GB。如果我对所有项目都在整个源代码树上进行获取,则只有大约8 GB的数据。

这只是文件的所有历史记录吗?似乎历史比例只是10:1 ...因为我认为差异很小。

有人知道给定8 GB的源(以及2年的事件)这是否是一个合理的大小?如果不是,该怎么看才能“解决”这个问题?

谢谢

最佳答案

抱歉,目前我无法解决比例问题。对于短期修复,您可以检查数据库文件中是否有可以释放的空间。您可能已经拥有,但是如果没有。

SELECT name ,size/128.0 - CAST(FILEPROPERTY(name, 'SpaceUsed') AS int)/128.0 AS AvailableSpaceInMB
FROM sys.database_files;

如果上面的语句返回了一些要恢复的空间,则可以查看一次DBCC SHRINKDATABASE或DBCC SHRINKFILE以及安排例程SQL维护计划,其中可能包括对数据库进行碎片整理。

DBCC SHRINKDATABASE和DBCC SHRINKFILE不是您应该定期执行的操作,因为SQL Server需要一些“交换”空间来移动内容以实现最佳性能。因此,都不应该将它们作为您的长期解决方案,它们都可能导致TFS响应时间的性能显着下降。

JB

关于version-control - tfs数据库大小-版本控制,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/318876/

10-10 22:02
查看更多