第一層:伺服器規劃與硬體
| 項目 | 建議規格 | 理由 |
| 作業系統 | Windows Server 2008/2012/2016/2019/2022 x64 | 支援大記憶體、核心調度優化 |
| SQL Server | 2008/2012/2014/2016/2017/2019/2022 x64 | 64 位元突破 4GB 記憶體限制 |
| 網路 | 萬兆/千兆網卡、專用 VLAN | 降低延遲、隔離儲存流量 |
| 儲存 | 硬體 RAID 5/10、獨立 LUN | LUN0 系統、LUN1 程式、LUN2 資料/記錄 |
| 叢集大小 | 64 KB | 對齊 SQL Server 64KB 區塊,減少讀取放大 |
第二層:作業系統調校(舊版 32 位元環境參考)
現代 64 位元環境多由 SQL Server 自動管理,以下為舊版遷移參考
- Enterprise/Datacenter 版本啟用 PAE(
/PAE in boot.ini)
gpedit.msc → 本機原則 → 使用者權利指派 → 「鎖定記憶體頁面」加入 SQL 服務帳號
- 虛擬記憶體放非系統實體磁碟,固定大小
- 網路最佳化:「最大化網路應用程式輸吞吐量」
第三層:SQL Server 引擎設定
- AWE / 最大記憶體:64 位元直接設
Max Server Memory(保留 4-8GB 給 OS),勿用 AWE。
- 資料庫自動成長:固定增長量(如 512MB/1GB),非百分比,減少碎片與擴容停頓。
- 復原模式:非時間點還原需求用
SIMPLE,減少記錄檔膨脹。
- TempDB 預先配置:多資料檔(邏輯 CPU 核心數 1:1,上限 8)、各 4GB+、同樣成長量,放專用 LUN。
- 停用非必要服務:僅保留 SQL Server、SQL Server Agent、SQL Browser。
第四層:資料庫架構設計
| 層級 | 方案 | 適用場景 |
| 單機 | 表分區(Partitioned Tables) | 大表歷史資料歸檔、維護窗口 |
| 雙機 | 交易式複寫 讀寫分離 | 報表查詢導流、高可用 |
| 多機 | 對等交易複寫 / AlwaysOn 可用性群組 | 多地災備、讀取擴展 |
第五層:T-SQL 查詢優化精要
- 建立適當索引(覆蓋索引、過濾索引、欄存索引)
- 減少游標,改用集合式操作
- 熱點小表考慮
In-Memory OLTP / 記憶體優化表
- 批次操作(
MERGE、BULK INSERT、Table-Valued Parameters)
- 查詢存儲、自動調優(SQL 2017+)持續監控回歸