回答

收藏

失败SQL查询磁盘空间不足

技术问答 技术问答 176 人阅读 | 0 人回复 | 2023-09-14


  Y8 E* g/ R# `7 U8 a" T消息1101,级别17,状态10,第12行由于文件组“ DEFAULT”中的磁盘空间不足,无法为数据库“( k- ]: [9 L+ |, t5 @
TEMPDB”分配新页。通过在文件组中放置对象,将其他文件添加到文件组或为文件组中的现有文件设置自动增长来创建必要的空间。- Q8 L7 M$ \/ b1 B7 o
/ p2 O" j) B' f$ f  o" ~  `3 p
用普通的英语是什么意思。
7 N% b- b( Y3 a                ! \6 T: a1 a9 m! }7 ]" i% m6 Y/ E0 O. n: D
解决方案:6 n8 U  h5 k  g* N  m3 n
                + o2 b4 I4 p+ v+ d) \6 E, ~

+ D9 o+ y6 _; r1 k" _. U/ P3 U
                我发现,TempDB爆炸式增长的正常原因是查询,无论是临时查询还是存储过程查询,该查询中都有意外的多对多联接,有人将其称为“偶然交叉联接”
" O1 ]: R, k8 @3 k7 ]9 L  W。在幕后,它可以创建数十亿个内部行,这些行最终驻留在TempDB中的“工作”表中。4 p) L3 D% A3 d" e
解决方法不是简单地分配更多的磁盘空间。解决方法是查找导致问题的原因并进行修复。否则,您将陷入无休止的循环,必须重新启动SQL Server等。
# L# v5 N6 U$ C8 Y$ u7 H. u而且,不…您不必检查TempDB是否处于“简单”恢复模式,因为您无法将其设置为其他任何模式。试试看。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则