在什么情况下每晚重新索引表是一个好主意?

Mar*_*ton 5 sql-server-2008

我继承了许多 SQL Server 2005 和 2008 系统(都在简单恢复模式下运行),每个系统当前每晚从 SQL 代理任务执行以下操作:

  • 备份
  • 收缩
  • 重新索引

我已经阻止了收缩的发生,因为这可能会导致比它解决的问题更多的问题。(服务器的用途是在滚动 5 天的基础上存储一致数量的信息,因此删除行的空间将再次用于新信息,不会有太大增长)。

但是,我不知道我是否也应该停止每晚重新索引的工作。由于收缩会导致大量索引碎片,因此在收缩处于活动状态时是必要的。我在互联网上找不到太多信息表明每晚重新索引可能是明智的。我也应该禁用它吗?

C. *_*oss 7

如果信息在滚动,则表明每天插入的总数据库中有很大一部分(大约 20%)。这表明您的统计数据和索引有 20% 的错误。

这听起来正是您应该重新编制索引的条件。