【问题标题】:TFS GIT getting full Error TF30042. tbl_content is fullTFS GIT 获取完整错误 TF30042。 tbl_content 已满
【发布时间】:2020-07-13 13:32:39
【问题描述】:

我们正在使用 Git 在 TFS 中运行我们的项目。最近它开始报错

TF30042:数据库已满。联系您的 Team Foundation Server 行政人员。服务器:ATSS-P-AAI\SqlExpress01,错误:1105,消息: '无法为对象分配空间 数据库'Tfs_DefaultCollection'中的'dbo.tbl_Content'.'PK_tbl_Content' 因为“PRIMARY”文件组已满。通过删除创建磁盘空间 不需要的文件,在文件组中删除对象,添加额外的 文件到文件组,或为现有文件设置自动增长 文件组。

我检查并发现 tbl_content 本身占用了大约 9.5GB 的空间,而总 DB 大小为 10GB。在这发生之前,我的一个队友错误地签入了一个包含大量二进制文件的存储库。他已经删除了存储库,但似乎 tbl_content 仍然有相同的空间。

我也尝试过设置 autogrowth,但似乎没有任何效果。我们现在不能再使用它了。

建议任何解决方案。

【问题讨论】:

  • 嗨@PatrickLu-MSFT,我们实际上已经迁移到 Azure。我们已经知道 Express 的数据库大小限制为 10GB,但我们无法计算异常增长,因为我们的代码库是大约 1.1GB。我想通过删除大文件来清理它,但没有成功。
  • 嗨@undefined 很高兴知道。不仅源代码,而且构建工件/工作项/测试结果也将取代您的集合数据库。这些东西也有可能超出数据库的限制。清理数据库后,最好重新启动整个 TFS 服务器/后台服务和数据库。这可能会奏效。当然,将您的项目迁移到云端(Azure DevOps 服务)也是一个不错的解决方案。您还可以同时使用更多和最新的功能。

标签: sql-server git tfs


【解决方案1】:

autogrowth 中的限制文件增长在您的情况下不起作用。由于 10GB 的限制来自 SQL Express 的 Daniel 提到。

SQL Server Express:SQL Server 免费版的限制

最重要的限制是 SQL Server Express 没有 支持大于 10 GB 的数据库。这将阻止您 使您的数据库变得更大。

你目前能做什么:

  1. 清理驱动器以释放空间。删除事务日志,查找无关的测试用例附件,构建 drop 检查到源代码之类的事情。

  2. 恢复您之前的备份数据库

  3. 改用 SQL Server Standard

【讨论】:

    【解决方案2】:

    这是因为您使用的是 SQL Express。 SQL Express 仅限于最大 10 GB 的数据库。

    这里的简单答案是您应该升级您的 SQL 版本。可以从数据库中删除数据,但不建议在没有 Microsoft 明确指示的情况下这样做。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-22
      • 2012-11-07
      • 2019-02-23
      • 1970-01-01
      • 1970-01-01
      • 2019-11-26
      • 2017-10-16
      • 2010-10-21
      相关资源
      最近更新 更多