2014-05-02 29 views
0

我有一項計劃在一天內運行好幾次的服務。該服務將在每次啓動時執行選擇查詢。DBCC ShrinkDatabase是否減慢了sql服務器的速度

它有時運行完美,但最終會達到「超時過期。操作完成或服務器沒有響應之前超時時間」。在某個時候以後例外。這非常隨機發生。

我在運行SQL事件探查器跟蹤,並查看DBCC SHRINKDATABASE身邊的時候開始,用了相當多的時間,但它是在同一臺服務器上的另一個數據庫。

我不知道SHRINKDATABASE操作會減慢SQL Server和有可能是它使我的查詢超時?

+4

你爲什麼要收縮的數據庫?別! –

+0

我沒有,但我的同事呢。 – daarkfish

+0

立即停止! – dean

回答

0

簡短的回答是肯定的,但也有很多不同的事情在機器上發生的事情,當你運行收縮數據庫命令,它會向所有慢查詢作出貢獻。

  1. 會有較高的磁盤I/O時,在文件中的數據被重新安排
  2. 由於數據已被重新安排你最有可能對索引的碎片可能放慢你的查詢。
  3. 的操作也非常CPU密集型

你可以在收縮過程中的大量信息這個頁面http://sqlmag.com/sql-server/shrinking-data-files