2014-07-15 25 views
2

我剛剛從一臺計算機移動到另一臺計算機的大型SQL Server數據庫(db文件大小爲25G,日誌大小爲20G)。然後突然在舊機器中返回1秒的查詢將在新建機器中運行超過1分鐘(功能更強大)。移動SQL Server數據庫降低性能

舊機器是雙核英特爾I3與4克RAM。這款新機器是四核英特爾I7,配有16g內存。

我檢查指標是完全一樣的。

可能是什麼原因?

修改:

尚未更新數據庫統計數據。會這樣做。 尚未對指標進行分解。也會這樣做。 操作系統:舊機器運行Windows Server 2008.新機器運行Windows Server 2012. 硬盤:SSD RAID 1.本地物理驅動器。分爲兩個邏輯驅動器一個用於數據庫存儲,另一個用於日誌存儲。

新機器正在運行完整的性能設置。這是一臺單獨的機器,與其他機器無關。 它專用於此數據庫任務,沒有別的機器正在運行。

+0

磁盤空間和存儲一般情況如何?服務器本地存儲是什麼?它是服務器的相同版本嗎? –

+0

也許發佈每臺機器的SQL實例的確切@@版本。執行計劃可能隨軟件版本而改變。 –

+1

失敗,也許比較查詢計劃? –

回答

2

這可能是多種原因。這是一個本地硬盤或網絡硬盤?

  1. 較新的硬盤速度慢
  2. 確保數據庫文件和事務日誌的磁盤碎片整理。您需要停止sql server並執行碎片整理。你可以使用類似微軟的Contig(http://technet.microsoft.com/en-in/sysinternals/bb897428.aspx
  3. 新的硬盤文件系統是否被加密?
  4. 檢查防病毒軟件。如果已經啓用了實時文件系統檢查,它會減慢由顯著因素一些殺毒品牌

最可能的原因是2或4個以上

作爲一般的建議,獲得更好的性能,存儲db文件和日誌文件放在單獨的硬盤上(不只是不同的分區)。

+0

你好,你是說整理索引或文件系統的數據文件?謝謝 – Johnyy

+0

你應該整理所有與你的數據庫相關的文件。這包括索引,如果它存儲在單獨的文件中。我正在講操作系統級碎片整理。數據庫碎片整理(SQL服務器維護任務)也將在這裏幫助。但是由於您使用的是SSD,因此您不會通過整理碎片獲得太多收益。 –

+0

當驅動器快滿時,SSD寫入性能會顯着下降。您可能需要檢查數據庫操作的SSD基準標記。 Paul Randal博客很有用。 http://www.sqlskills.com/blogs/paul/benchmarking-introducing-ssds-part-1b-not-overloaded-log-file-array搜索他在SSD上的所有文章。有用的閱讀 –