DBCC ShrinkDatabase是否会降低sql server的速度

时间:2014-05-02 02:41:01

标签: sql sql-server

我有一项服务,计划一天运行几次。该服务每次触发时都会执行一个选择查询。

它有时会完美运行,但最终会达到“Timeout expired。超时时间在操作完成之前已经过去,或者服务器没有响应。”一段时间后的异常。这种情况非常随机发生。

我在sql profiler中运行跟踪并看到DBCC shrinkdatabase在这段时间内开始使用并且使用了相当多的时间,但是它用于同一服务器上的另一个数据库。

我想知道缩减数据库操作是否会降低sql server的速度,是否可能导致查询超时?

1 个答案:

答案 0 :(得分:0)

简短的回答是肯定的,但是当您运行shrink database命令时,机器上会发生很多不同的事情,这会导致查询速度变慢。

  1. 重新排列文件中的数据时,磁盘I / O会很高
  2. 由于数据已经重新排列,您很可能会在索引上出现碎片,这可能会降低您的查询速度。
  3. 操作也非常耗费CPU
  4. 您可以在此页http://sqlmag.com/sql-server/shrinking-data-files

    上获得有关缩小过程的大量信息