首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Server 2005:回收LOB空间

Server 2005:回收LOB空间
EN

Server Fault用户
提问于 2009-11-13 16:42:15
回答 1查看 266关注 0票数 2

我的一个数据库里有一张有趣的桌子,这让我很困惑。

所讨论的表有几个LOB类型的列(两个nvarchar(max)和一个文本),看起来存在一些奇怪的空间问题。

从这个查询中:

代码语言:javascript
复制
SELECT type_desc,
       SUM(total_pages) *8 [Size in kb]
FROM  sys.partitions p JOIN sys.allocation_units a
ON  p.partition_id = a.container_id
WHERE p.object_id = OBJECT_ID('asyncoperationbase')
GROUP BY type_desc; 

我得到:

代码语言:javascript
复制
type_desc           Size in kb
IN_ROW_DATA          27936
LOB_DATA             1198144
ROW_OVERFLOW_DATA   0

(表中只有不到8000行,每一行的数据长度为~10k --不包括LOB数据)

这里有些有趣的地方:

代码语言:javascript
复制
SELECT ( SUM(DATALENGTH(aob.WorkflowState)) +
   SUM(DATALENGTH(aob.[Message]))+
   SUM(DATALENGTH(aob.[Data])) ) / 1024

来自AsyncOperationBase aob

返回:

代码语言:javascript
复制
76617

当我阅读它时--它看起来像是存储在一个空间上的大约75 of的LOB数据--我希望会有一些开销,但不会放弃那么多。

谢谢,

安德鲁

EN

回答 1

Server Fault用户

发布于 2010-01-20 20:50:15

好的,我想我会更新这个,以防它对别人有帮助。最后,在这个问题上使用了MS支持,显然有一个后台工作线程负责释放空间。在这种情况下,它已经停止工作。简单的修复方法是重新启动SQL服务器。

干杯

安德鲁

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

https://serverfault.com/questions/84471

复制
相关文章

相似问题

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