2011-06-23 39 views
1

我正在運行一組SQL腳本來創建SQL Server 2008數據庫(模式和靜態數據)。我遇到的問題是腳本在我的Windows 7開發機器上運行了6分鐘,但在運行Windows Server 2003的構建服務器上運行需要40分鐘。2008 sqlcmd實用程序在windows server 2003上比windows 7慢得多

我甚至知道6分鐘太長,但40分鐘是不可接受的!大多數時間是設置靜態數據的數千個記錄(從sql server management studio編寫成1000個批次)。

的SQLCMD UTIL與來自本網站的SQL客戶端工具對於SQL Server 2008一起下載:http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=8824

所以我的問題是:

是否有任何已知的原因,運行SQLCMD會慢上一個Windows Server 2003機器與Windows 7機器?

+0

在進一步檢查中,我認爲它可能是64位和32位版本之間的性能差異?有可能這個巨大的差異與不同的版本有關。我在兩臺32位的服務器2003盒子上運行了這個腳本,並且都運行得非常慢。我在服務器2008 64盒子上運行腳本,它和我的開發機器一樣快。我想知道是否有其他人經歷過這樣的事情? – rabs

+0

您是否正在腳本中創建新的數據庫/數據文件/還原備份?請告訴我們更多關於你的劇本在做什麼。 –

+0

從腳本創建一個新的數據庫,請參閱我對以下答案的回覆以獲取更多信息。 – rabs

回答

0

您可能沒有在服務器上啓用Instant File Initialization

+0

嗨,約翰,感謝您的回覆我閱讀博客文章,這是一個有趣的閱讀,我沒有聽說過即時文件初始化。 至於你上面的問題,我沒有在問題中留下一些細節。 我正在共享數據庫服務器上創建數據庫,我運行測試的所有Windows計算機都使用sqlcmd針對同一個網絡上的同一個數據庫服務器運行腳本。這些腳本由模式創建腳本(創建表,默認值,索引等等)組成,還爲所有靜態數據(90MB值)插入腳本。其他任何想法爲什麼它在服務器2003上太慢 – rabs

相關問題