SQL Server 2016 安裝過程新增「TempDB」頁簽,依 CPU 核心數自動規劃資料檔數量:
| CPU 核心數 | TempDB 資料檔數 |
|---|---|
| ≤ 8 | 等於核心數 |
| > 8 | 8 |

可指定多個資料夾,安裝程式自動循環分配(Round-robin),有效緩解 Latch Contention(闩鎖競爭)。
缺點:預設初始大小 8MB、自動成長 64MB,生產環境建議安裝後手動調大初始值並啟用瞬間檔案初始化(IFI)。
舊版本:前 8 頁使用 混合區(共享,64KB),第 9 頁起改用 統一區。
啟用追蹤旗標 1118 可強制全域統一區分配,減少 SGAM 閩鎖爭用。
SQL 2016 行為:TempDB 物件永遠直接分配統一區,無需 1118,其他資料庫維持混合區機制。
-- 驗證腳本
USE tempdb;
CREATE TABLE #t (c1 INT IDENTITY PRIMARY KEY, c2 CHAR(8000));
INSERT INTO #t VALUES (REPLICATE('a',8000)); GO 7
DBCC TRACEON(3604);
DBCC IND(tempdb, '#t...', -1); -- 查看頁配置
DBCC PAGE (tempdb, 5, 33, 3); -- IAM 頁顯示完整統一區
DROP TABLE #t;
舊版需開啟 1117 讓同檔案組所有檔案同步成長,維持比例填充演算法效率。
SQL 2016:TempDB 內建同步自動成長,無需追蹤旗標。
MAXDOP、Cost Threshold for Parallelism、Max Server Memory 建議值。