首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >SQL Server 2000索引 - 群集与非群集

SQL Server 2000索引 - 群集与非群集
EN

Stack Overflow用户
提问于 2019-03-26 00:23:31
回答 2查看 0关注 0票数 0

我继承了一个数据库,其中每个聚簇索引都有聚簇索引和附加重复索引。

即IX_PrimaryKey是列ID的聚簇索引。IX_ID是列ID上的非聚簇索引。

我想清理这些重复的非聚集索引,我想检查是否有人能想到这样做的理由。

有人能想到这样做的性能优势吗?

EN

回答 2

Stack Overflow用户

发布于 2019-03-26 08:31:28

对于完全相同的索引,没有性能提升。实际上,它会导致插入和更新中的性能损失。但是,如果存在具有不同列顺序的多列索引,则可能存在它们的正当理由。

票数 0
EN

Stack Overflow用户

发布于 2019-03-26 09:43:44

我认为发生的事情是SQL Server会在指定主键约束时自动创建聚簇索引(如果另一个索引(非聚簇/聚簇)已经存在,则会发生这种情况)然后某些人可能已经创建了主键列的非聚集索引。

这种情况会:

  • 在插入/删除/更新发生时更新索引会对性能产生一些负面影响。
  • 使用额外的磁盘空间。
  • 可能导致死锁。
  • 将有助于更多时间备份/恢复数据库。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100001047

复制
相关文章

相似问题

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