创建聚簇索引是否会破坏我的应用程序

时间:2012-09-27 11:17:27

标签: sql-server database-tuning-advisor

我正在使用SQL Server 2008 R2数据库调优顾问来调整第三方ERP系统使用的一个数据库。目前,此ERP应用程序在用户执行的特定操作中确实存在一些严重的性能问题。

我使用SQL Server配置文件在一天中的繁忙时段跟踪他们的生产数据库几个小时。昨晚我让数据库调优顾问咀嚼了一下,它提出了很多建议,并承诺89%的性能提升!!

现在,我已经明白,根据建议,我应首先创建推荐的聚簇索引和唯一索引,然后重做跟踪和调优。

是否有可能通过创建聚簇索引来解决应用程序功能的问题?

2 个答案:

答案 0 :(得分:0)

  

是否有可能通过创建聚簇索引来解决应用程序功能的问题?

不,创建CLUSTERED INDEX / UNIQUE INDEX肯定不会从功能角度破坏您的应用程序,因为这些在检索索引时会有所帮助,而不是执行表扫描。它们不会对数据应该如何存储在表中的方式施加任何约束,如完整性约束(PRIMARY KEY,UNIQUE KEY,FOREIGN KEY等)。

答案 1 :(得分:0)

如果更新并插入新记录,群集索引可能会破坏应用程序性能。聚簇索引告诉SQL按照聚簇索引中的定义按顺序放置记录。

如果新记录将破坏此顺序,SQL必须在表中移动许多记录以确保每个新记录的聚簇索引顺序。