首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >索引重建后使用的数据库空间减少(Ola脚本)

索引重建后使用的数据库空间减少(Ola脚本)
EN

Database Administration用户
提问于 2018-07-03 18:32:25
回答 2查看 235关注 0票数 1

我重建了一些高度分散的索引。在索引重建之后,我看到我使用的数据库空间减少了近50% (从77 gb减少到33 gb)。

这是正常行为吗?我没有自动心理医生打开-我丢失数据了吗?

注意:我的数据库文件中使用的空间减少了;数据库文件的实际物理大小不变。

命令,用于计算所使用的空间:

代码语言:javascript
复制
SELECT sum(CAST(FILEPROPERTY(name, ''SpaceUsed'') AS INT))/128.0 as Space_Used_MB

select @@version结果

Microsoft 2014 (SP2-CU11) (KB4077063) - 12.0.5579.0 (X64)

重建使用Ola Hallengren脚本执行的索引。使用的参数:

代码语言:javascript
复制
Databases = 'USER_DATABASES',
FragmentationMedium='INDEX_REORGANIZE,INDEX_REBUILD_ONLINE,INDEX_REBUILD_OFFLINE 
',
FragmentationHigh = 'INDEX_REBUILD_ONLINE,INDEX_REBUILD_OFFLINE', 
FragmentationLevel1 = 5, FragmentationLevel2 = 30, FillFactor=80, 
UpdateStatistics = 'ALL', OnlyModifiedStatistics = 'Y', LogToTable = 'Y'" -b 
EN

回答 2

Database Administration用户

回答已采纳

发布于 2018-07-04 00:02:01

在进行索引维护/重建时,您不会丢失数据。由于数据是分段的,数据将被分散到聚集/非聚集索引中的多个叶页上,因为数据会随着时间的推移而被删除/更新,在原来的页面位置留下空白。重新组织/重建索引,通过重新排序页面中的数据并将空间释放回数据库以供将来使用,从而恢复空间。

票数 3
EN

Database Administration用户

发布于 2018-07-03 20:43:34

这是相当普遍的行为。您正在通过在叶级别中重新排序页来回收未使用的空间。

只是不要缩小您的数据文件,除非它是关键-您可能需要在未来的空间。您只是在浪费时间,将数据库碎片化并锁定表。

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

https://dba.stackexchange.com/questions/211264

复制
相关文章

相似问题

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