【问题标题】:Failure SQL query insufficient disk space失败SQL查询磁盘空间不足
【发布时间】:2012-02-15 04:58:44
【问题描述】:

消息 1101,第 17 级,状态 10,第 12 行 由于文件组“DEFAULT”中的磁盘空间不足,无法为数据库“TEMPDB”分配新页面。通过删除文件组中的对象、向文件组中添加其他文件或为文件组中的现有文件设置自动增长来创建必要的空间。

这在简单的英语中是什么意思。

【问题讨论】:

  • 没必要这么突然。发帖人显然是在要求澄清为什么会发生这种情况。
  • @generalexception - 由于消息实际上非常清楚,因此如果他们解释他们不理解的内容会有所帮助。我们是否从他们不知道tempdb 是什么或为什么与他们的查询相关的起点开始工作?
  • 道歉马丁,你应该假设我知道 tempdb 是什么,我得到的是这个错误消息的一般原因是什么,下次我会尽量清楚,以免造成困惑或怀疑。从现在开始,如果我粘贴一条错误消息,我将逐一查看并说明我是否理解。
  • 再次道歉,如果我们没有像你这样的人指出这些事情,我们会在哪里......
  • 没问题。总是乐于提供帮助!

标签: sql sql-server join view tempdb


【解决方案1】:
  1. 停止 Citrix System Monitoring Agent 服务
  2. 停止 Firebird 服务器 - CSMInstance 服务
  3. 删除位于 C:\Documents and Settings\All Users\Application Data\Citrix\System Monitoring\Data 的 RSDATR.FDB firebird 数据库
  4. 重启服务

【讨论】:

  • 这个问题被明确标记为SQL Server,它是不是 Firebird。
【解决方案2】:

我发现 TempDB 爆炸式增长的正常原因是查询,无论是临时查询还是存储过程中的查询,其中包含意外的多对多连接,有些人称之为“意外交叉连接”。在幕后,它可以创建数十亿个内部行,这些行最终存在于 TempDB 中的“工作”表中。

解决方法不是简单地分配更多磁盘空间。修复方法是找出导致问题的原因并修复它。否则,您将陷入一个永无止境的循环,不得不重新启动 SQL Server 等。

而且,不...您不必检查 TempDB 是否处于“简单”恢复模式,因为您无法将其设置为其他任何值。试试看。

【讨论】:

    【解决方案3】:

    这意味着你的 tempdb 数据库已满

    你可以

    1. 重新启动 SQL Server 服务,这将重新创建 tempdb 数据库
    2. 在另一个具有更多空间的磁盘上添加另一个文件
    3. 收缩 tempdb 的日志文件

    详情请见Dealing with the could not allocate new page for database 'TEMPDB'. There are no more pages available in filegroup DEFAULT error message

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-08
      • 2013-10-09
      • 2015-12-04
      • 2015-12-30
      • 1970-01-01
      • 2018-01-30
      • 1970-01-01
      相关资源
      最近更新 更多