首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 安裝完成必改 3 項預設配置:記憶體、並行閾值、MAXDOP

     編輯:關於SqlServer

預設配置 = 錯誤配置

全新安裝的 SQL Server 預設值在現代硬體上幾乎全錯,上線前必須調整。

1. 最大伺服器記憶體

預設值

2147483647 MB (2 PB) —— 遠超 48 位址匯流排 256 TB 物理上限,實際會吃光全部實體記憶體導致 OS 喘不氣。

建議設定

  • 保留 10-15% 給 OS(若無其他服務)
  • 64 GB RAM → 設 56 GB (57344 MB)
  • 公式:Max Server Memory = 總實體記憶體 - OS保留 - 其他服務

2. 並行成本閾值

預設值

5 —— 極低,微小查詢就觸發並行,OLTP 環境下通常是缺索引導致掃描成本超過 5。

建議設定

  • 最低 20,建議 50
  • 只讓真正大查詢(報表、資料倉庫)並行
  • 看到並行計畫先檢查:能否加索引降低成本變串行?

3. 最大平行度 (MAXDOP)

預設值

0 = 使用所有排程器(所有 CPU 核心)。

建議設定

  • 設為 單一 NUMA 節點的核心數(如雙路 10 核 → 設 10)
  • 讓並行計畫限制在單一 NUMA 節點,避免跨節點記憶體存取延遲
  • 不要設 1!會導致索引重建等維護操作單執行緒,嚴重拖慢維護窗口
  • 例外:SharePoint 要求 MAXDOP=1,依廠商文件

驗證修改生效

EXEC sp_configure 'show advanced options', 1; RECONFIGURE;
EXEC sp_configure 'max server memory (MB)';
EXEC sp_configure 'cost threshold for parallelism';
EXEC sp_configure 'max degree of parallelism';

DBA 黃金法則

安裝完成 ≠ 可上線。配置硬體適配 才是 DBA 真正工作的開始。

立即檢查你的生產環境,這三項若仍是預設值,請排程維護窗口調整。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved