SAP R/3 資料庫管理員、大型資料庫 (VLDB) 環境 DBA。雖針對 SAP R/3,但優化原則普遍適用於高負載、大量連線的 SQL Server 環境。
至少為實體記憶體的 3 倍,且不小於 1 GB。控制台 → 系統 → 效能 → 虛擬記憶體 → 變更 → 設定初始/最大值。
控制台 → 網路 → 服務 → 伺服器 → 選「最大化網路應用程式輸送量」。
桌面背景設「無」、螢幕保護設「空白」並啟用密碼保護,減少 GUI 佔用資源。
多處理器系統預設將網卡 DPC 指派給最高編號 CPU,易造成單 CPU 瓶頸。若 Processor: % Processor Time = 100% 且 % DPC Time > 50%,需調整登錄 ProcessorAffinityMask 分散中斷負載。警告:登錄編輯風險高,操作前必須備份。
max degree of parallelism 依 CPU 核心數設定,SAP 批次作業受益於平行查詢。read ahead、scan density 相關追蹤旗標 (參考 TechNet)。auto update statistics、auto create statistics 開啟。SAP 表大量、欄位多、查詢模式複雜。索引分析需持續進行:
DBCC SHOW_STATISTICS、SHOWPLAN 分析查詢計畫。WHERE、JOIN、ORDER BY 欄位建立複合索引,注意欄位順序 (選擇性高者優先)。DBCC INDEXDEFRAG / REBUILD 維護索引碎片。.ldf 置於獨立 RAID 1/10 磁碟,避免與資料檔爭用 I/O。PRIMARY:系統物件、小型參考表。SAP_DATA:大型應用表 (依存取頻率再細分)。SAP_INDEX:非叢集索引獨立群組,置於高速磁碟。TEMPDB:獨立群組置於最快磁碟 (RAID 0/10),多資料檔 (每 CPU 一檔) 減少爭用。OS 層面 (分頁檔、VMM、SMP 中斷) + SQL 核心設定 (記憶體、平行度、統計資料) + 索引持續優化 + 檔案群組架構規劃,四位一體才能在 SAP R/3 等高負載環境發揮 SQL Server 7.0 最大效能。