Sql-Server
在 VMWare ESXi 中優化 MSSQL 2008 伺服器
我通常在專用伺服器上執行我的 MSSQL 伺服器,但我們已經接受了一個在 VMWare ESXi 4 主機內執行其 SQL Server 的客戶端,坦率地說,它的執行就像垃圾一樣。
我們已經確定問題不是數據庫本身。我們將相同的數據庫部署到專用伺服器上,其規格低於 VMWare 來賓,它的執行速度至少快 5 倍。
伺服器是:
Dual Quad Core Xeon 2Ghz (I don't know the exact model) 24Gb RAM 4x 300Gb SAS (RAID 10) ESXi 4
主持人是:
4x vCPUs 3Gb RAM 80Gb disk space Server 2008 Standard SQL Server 2008 Workgroup
主機上的其他 VM 的流量非常低。第二個 DC(幾乎未使用)、低流量 Web 伺服器和低容量終端伺服器(在任何給定時間約 5 個使用者)和一些其他雜項客人。
我很久以前讀過一篇關於在 Windows 和 SQL 伺服器中設置一大堆 Paging 設置以對其進行優化的文章,但我再也找不到它了 :(
是否有人可以提供任何提示或技巧來提高 SQL 性能?
好的,這裡有一些提示,沒有特定的性能受益順序;
- 確保虛擬機在 7 型虛擬硬體上執行(它在虛擬機摘要中說明)
- 確保所有 VM 磁碟都是胖而不是瘦
- 升級到版本 4 更新 1
- 確保所有虛擬機都安裝了最新的 vmtools
- 對於 W2K8 虛擬機,使用“LSI SAS”磁碟控制器和 vmxnet3 NIC
- 確保您已在作業系統中打開交換
- 禁用螢幕保護程序
- 將影片幀緩衝區設置為 4MB 或更少
- 從所有 VM 中刪除任何不必要的虛擬硬體,例如磁片、串列、並行等。
- 正如 Zypher 所說,在所有分配的 vCPU 可用之前, ESX 不會給 VM任何vCPU 時間- 嘗試將數量從 4 減少到 3 或 2(不要害怕給 VM 3、5 或 7 個 vCPU,它感覺很奇怪,但工作得很好),也看看你的其他虛擬機,如果他們不需要它們,減少他們的 vCPU - 這台機器真的沒有那麼多核心
- 確保在 BIOS 中啟用硬體虛擬化,並針對性能調整所有電源管理選項
- 查看您的 VM 的“份額”,根據重要性和目前行為考慮增加和/或降低各種份額值/優先級 - 還要認真考慮您的預訂選項 - 這些選項可以在競爭中產生巨大的差異。
- 然後明顯看SQL VM的性能數據,特別是可用記憶體、%RDY和磁碟隊列長度/等待
- 考慮將磁碟添加到陣列和/或為此 VM 提供專用 vmdk/數據儲存/磁碟
如果我想到任何好的,我會添加更多,祝你好運。