核心原則
專用資料庫伺服器上,SQL Server 記憶體設定遵循:
總實體記憶體 - 作業系統保留 (約 20-50 MB) = SQL Server 最大記憶體
具體建議
| 實體 RAM | 作業系統保留 | SQL Server Max Memory |
| 512 MB | 50 MB | 462 MB |
| 1 GB | 50 MB | 974 MB |
| 2 GB | 100 MB | 1948 MB |
| 4 GB+ | 200-500 MB | 其餘 |
設定方式
-- 企業管理器:右鍵伺服器 → 屬性 → 記憶體 → 最大伺服器記憶體 (MB)
-- 或 T-SQL:
EXEC sp_configure 'show advanced options', 1
RECONFIGURE
EXEC sp_configure 'max server memory', 462 -- 單位 MB
RECONFIGURE
注意事項
- 不要設為 0(預設值 = 動態管理,可能佔用過多導致 OS 記憶體壓力)
- 若同機運行其他服務 (IIS、檔案伺服器等),需額外預留記憶體
- 啟用
AWE (32 位元 SQL Server 存取 >4GB RAM) 時,max server memory 仍需設定
- 監控
SQLServer:Memory Manager / Target Server Memory 與 Total Server Memory 計數器驗證實際使用量
為什麼要預留給 OS?
- 核心作業、檔案系統快取、網路堆疊、分頁池
- 避免 OS 記憶體不足觸發分頁,嚴重拖慢 SQL Server 效能
- 確保備份、防毒、監控等代理程式正常運作
簡單記住:專機跑 SQL,留 20-50MB 給 Windows,其餘全給 SQL Server。
- 上一篇文章: DBCC CHECKIDENT:IDENTITY 欄位種子值檢查與重設完整指南
- 下一篇文章: SQL Server 7.0 中 SET LOCK_TIMEOUT 非持久化特性與死鎖預防正確策略
Copyright ©
程式碼之家 All Rights Reserved