伺服器組態選項 (SQL Server)

適用於:SQL ServerAzure SQL 受控執行個體

您可以使用 SQL Server Management Studio 或sp_configure系統預存程式,透過組態選項來管理和優化 SQL Server 和 Azure SQL 受控執行個體 資源。 最常使用的伺服器組態選項可以透過 SQL Server Management Studio 來使用;而所有組態選項都可以透過 sp_configure 來存取。 在設定這些選項前,請仔細考慮這些選項對系統所造成的效果。 如需詳細資訊,請參閱檢視或變更伺服器屬性(SQL Server)。

重要

只有有經驗的資料庫管理員或通過認證的 SQL Server 技術人員,才可變更進階選項。

設定選項的類別

如果您沒有看到組態變更的效果,可能不會安裝它。 請檢查組態選項的 run_value 是否已變更。

在設定選項並發出 RECONFIGURE (或在某些情況下,發出 RECONFIGURE WITH OVERRIDE) 陳述式之後,組態選項會立即生效。 重新設定某些選項會使計劃快取中的計劃失效,導致編譯新的計劃。 如需詳細資訊,請參閱 DBCC FREEPROCCACHE (Transact-SQL)

您可以使用 sys.configurations 目錄檢視來判斷 config_value (value 資料行) 和 run_value (value_in_use 資料行),以及組態選項是否需要資料庫引擎重新啟動 (is_dynamic 資料行)。

如果 SQL Server 需要重新啟動,選項只會在數據行中 value 顯示已變更的值。 重新啟動之後,新值將同時出現在 value 資料行及 value_in_use 資料行中。

有些選項需要重新啟動伺服器,新的組態值才能生效。 如果在重新啟動伺服器之前就設定新值並執行 sp_configure,新值會出現在 sys.configurations 目錄檢視的 value 資料行中,但不會出現在 value_in_use 資料行中。 當您重新啟動伺服器時,新的值就會出現在 value_in_use 資料行中。

注意

sp_configure 結果集中的 config_value 相當於 sys.configurations 目錄檢視的 value 資料行,而 run_value 相當於 value_in_use 資料行。

自我設定的選項是指 SQL Server 會根據系統需要而自行調整的選項。 在大多數情況下,都不需以手動方式來設定這些值。 範例包括 [最大背景工作執行緒] 選項與 [使用者連線] 選項。

下列查詢可用來判斷是否有任何已設定的值尚未安裝:

SELECT *
FROM sys.configurations
WHERE [value] <> [value_in_use];

如果值是您所做組態選項的變更,但 value_in_use 不同,則 RECONFIGURE 命令未執行或失敗,或是資料庫引擎必須重新啟動。

有兩個組態選項,其中 valuevalue_in_use 可能不相同,這是預期的行為:

  • max server memory (MB) - 預設設定的值 0 會顯示為 2147483647 資料行中的 value_in_use

  • min server memory (MB) - 0 的預設設定值在 value_in_use 資料行中可能會顯示為 8 (32 位元系統上),或顯示為 16 (64 位元系統上)。 在某些情況下,如果 value_in_use 顯示為 0,則 true value_in_use8 (32 位元) 或 16 (64 位元)。

is_dynamic 資料行可用來判斷組態選項是否需要重新啟動。 數據行中的 is_dynamic1表示當命令執行時RECONFIGURE,新的值會立即生效。 在某些情況下,資料庫引擎 可能不會立即評估新值,但在正常執行過程中執行。 數據行中的 is_dynamic0表示變更的組態值在重新啟動 資料庫引擎 之前不會生效,即使執行命令也一樣RECONFIGURE

對於不是動態的組態選項,無法判斷命令是否已 RECONFIGURE 執行以套用組態變更。 重新啟動 SQL Server 以套用組態變更之前,請執行 RECONFIGURE 命令,以確保下次重新啟動 SQL Server 時,所有組態變更都會生效。

設定選項

下表列出所有可用的組態選項、可能的設定範圍、預設值和支持的產品(SQL Server 或 Azure SQL 受控執行個體)。 組態選項會加上字母標示,如下所示:

  • A = 進階選項,只能由有經驗的資料庫管理員或通過認證的 SQL Server 專業人員變更,而且必須將 show advanced options 設定為 1

  • RR = 需要重新啟動資料庫引擎的選項。

  • RP = 需要重新啟動 PolyBase 引擎的選項。

  • SC = 自我設定的選項。

注意

SQL Server 2014 (12.x) 是 32 位作業系統上可用的最後一個版本。

組態選項 可能值 SQL Server Azure SQL 受控執行個體
access check cache bucket count (A) 最小值0
最大值16384
預設值:0
Yes Yes
access check cache quota (A) 最小值0
最大值2147483647
預設值:0
Yes Yes
臨機操作分散式查詢 (A) 最小值0
最大值1
預設值:0
Yes Yes
ADR 清潔工重試逾時 (最小值) (A) 最小值0
最大值32767
預設值:120
SQL Server 2019 (15.x) 和更新版本 Yes
ADR 預先分配因數 (A) 最小值0
最大值32767
預設值:4
SQL Server 2019 (15.x) 和更新版本 Yes
affinity I/O mask (A、RR) 最小值-2147483648
最大值2147483647
預設值:0
是 (僅限 64 位) No
affinity mask (A) 最小值-2147483648
最大值2147483647
預設值:0
是 (僅限 64 位) Yes
affinity64 I/O mask (A, RR) 最小值-2147483648
最大值2147483647
預設值:0
是 (僅限 64 位) Yes
affinity64 mask (A) 最小值-2147483648
最大值2147483647
預設值:0
是 (僅限 64 位) No
代理程式 XP (A) 1 最小值0
最大值1
預設值:0
No
允許 polybase 匯出 最小值0
最大值1
預設值:0
SQL Server 2016 (13.x) 和更新版本 No
允許更新

警告: 已過時。 請勿使用。 在重新設定期間造成錯誤。
最小值0
最大值1
預設值:0
No
自動停用 軟體 NUMA (A, RR) 最小值0
最大值1
預設值:0
Yes Yes
備份總和檢查碼預設 最小值0
最大值1
預設值:0
Yes Yes
備份壓縮演算法 最小值0
最大值1
預設值:0
SQL Server 2022 (16.x) 及更新版本 Yes
backup compression default 最小值0
最大值1 (在 SQL Server 2022 (16.x)之前)或 2 (SQL Server 2022 (16.x) 和更新版本)
預設值:0
Yes Yes
封鎖的行程閾值 (s) (A) 最小值5
最大值86400
預設值:0
Yes Yes
c2 audit mode (A、RR) 最小值0
最大值1
預設值:0
No
clr enabled 最小值0
最大值1
預設值:0
Yes Yes
CLR 嚴格安全性 (A) 最小值0
最大值1
預設值:0
SQL Server 2017 (14.x) 和更新版本 Yes
資料行加密記憶體保護區型態 (RR) 最小值0
最大值2
預設值:0
No
common criteria compliance enabled (A、RR) 最小值0
最大值1
預設值:0
No
自主資料庫驗證 最小值0
最大值1
預設值:0
Yes Yes
平行處理原則的成本臨界值 (A) 最小值0
最大值32767
預設值:5
Yes Yes
cross db ownership chaining 最小值0
最大值1
預設值:0
Yes Yes
資料指標臨界值 (A) 最小值-1
最大值2147483647
預設值:-1
Yes Yes
Database Mail XPs (A) 最小值0
最大值1
預設值:0
Yes Yes
預設全文檢索語言 (A) 最小值0
最大值2147483647
預設值:1033
Yes Yes
default language 最小值0
最大值9999
預設值:0
Yes Yes
預設追蹤已啟用 (A) 最小值0
最大值1
預設值:1
Yes Yes
不允許來自觸發程序的結果 (A) 最小值0
最大值1
預設值:0
Yes Yes
已啟用 EKM 提供者 (A) 最小值0
最大值1
預設值:0
Yes Yes
開啟 外部文稿 (SC) 最小值0
最大值1
預設值:0
SQL Server 2016 (13.x) 和更新版本 Yes
檔案資料流存取層級 最小值0
最大值2
預設值:0
No
fill factor ≤ (A, RR) 最小值0
最大值100
預設值:0
No
ft crawl bandwidth (max) (A) 最小值0
最大值32767
預設值:100
Yes Yes
ft crawl bandwidth (min) (A) 最小值0
最大值32767
預設值:0
Yes Yes
ft notify bandwidth (max) (A) 最小值0
最大值32767
預設值:100
Yes Yes
ft notify bandwidth (min) (A) 最小值0
最大值32767
預設值:0
Yes Yes
Hadoop 連線能力 (RP) 最小值0
最大值7
預設值:0
SQL Server 2016 (13.x) 和更新版本 Yes
硬體卸除已啟用 (A, RR) 最小值0
最大值1
預設值:0
SQL Server 2022 (16.x) 及更新版本 Yes
in-doubt xact resolution (A) 最小值0
最大值2
預設值:0
Yes Yes
index create memory (KB) (A, SC) 最小值704
最大值2147483647
預設值:0
Yes Yes
lightweight pooling (A、RR) 最小值0
最大值1
預設值:0
No
locks (A、RR、SC) 最小值5000
最大值2147483647
預設值:0
No
max degree of parallelism (A) 最小值0
最大值32767
預設值:0
No
max full-text crawl range (A) 最小值0
最大值256
預設值:4
Yes Yes
最大伺服器記憶體 (MB) (A, SC) 最小值16
最大值2147483647
預設值:2147483647
Yes Yes
max text repl size (B) 最小值0
最大值2147483647
預設值:65536
Yes Yes
最大背景工作線程 (A) 2 最小值128
最大值32767
預設值:0

2048是 64 位 SQL Server 的建議最大值1024針對 32 位)
Yes Yes
媒體保留 期 (A) 最小值0
最大值365
預設值:0
No
每一查詢的最小記憶體 (KB) (A) 最小值512
最大值2147483647
預設值:1024
No
最小伺服器記憶體 (MB) (A, SC) 最小值0
最大值2147483647
預設值:0
No
巢狀觸發程序 最小值0
最大值1
預設值:1
Yes Yes
網路封包大小 (B) (A) 最小值512
最大值32767
預設值:4096
Yes Yes
Ole Automation Procedures (A) 最小值0
最大值1
預設值:0
Yes Yes
開啟物件 (A, RR)

警告: 已過時。 請勿使用。
最小值0
最大值2147483647
預設值:0
No
optimize for ad hoc workloads (A) 最小值0
最大值1
預設值:0
Yes Yes
PH 逾時 (A) 最小值1
最大值3600
預設值:60
Yes Yes
已啟用 polybase 最小值0
最大值1
預設值:0
SQL Server 2019 (15.x) 和更新版本 No
Polybase 網路加密 最小值0
最大值1
預設值:1
Yes Yes
precompute rank (A) 最小值0
最大值1
預設值:0
Yes Yes
priority boost (A、RR) 最小值0
最大值1
預設值:0
No
query governor cost limit (A) 最小值0
最大值2147483647
預設值:0
Yes Yes
查詢等候 (s) (A) 最小值-1
最大值2147483647
預設值:-1
Yes Yes
復原間隔 (分鐘) (A、SC) 最小值0
最大值32767
預設值:0
Yes Yes
remote access (RR) 最小值0
最大值1
預設值:1
No
remote admin connections 最小值0
最大值1
預設值:0
Yes Yes
遠端資料封存 最小值0
最大值1
預設值:0
No
遠端登入逾時 (s) 最小值0
最大值2147483647
預設值:10
Yes Yes
remote proc trans 最小值0
最大值1
預設值:0
Yes Yes
遠端查詢逾時 (s) 最小值0
最大值2147483647
預設值:600
Yes Yes
複寫 XP (A) 最小值0
最大值1
預設值:0
Yes Yes
scan for startup procs (A、RR) 最小值0
最大值1
預設值:0
No
server trigger recursion 最小值0
最大值1
預設值:1
Yes Yes
set working set size (A, RR)

警告: 已過時。 請勿使用。
最小值0
最大值1
預設值:0
No
show advanced options 最小值0
最大值1
預設值:0
Yes Yes
SMO and DMO XPs (A) 最小值0
最大值1
預設值:1
Yes Yes
隱藏復原模式錯誤 (A) 最小值0
最大值1
預設值:0
No Yes
tempdb 元資料記憶體優化 (A, RR) 最小值0
最大值1
預設值:0
SQL Server 2019 (15.x) 和更新版本 No
transform noise words (A) 最小值0
最大值1
預設值:0
Yes Yes
two digit year cutoff (A) 最小值1753
最大值9999
預設值:2049
Yes Yes
user connections (A、RR、SC) 最小值0
最大值32767
預設值:0
No
user options 最小值0
最大值32767
預設值:0
Yes Yes
xp_cmdshell (A) 最小值0
最大值1
預設值:0
Yes Yes

1 啟動 SQL Server Agent 時的變更 1 。 如果 SQL Server Agent 設定為安裝程式期間自動啟動,則預設值 0 為 。

2 零 (0) 會根據邏輯處理器數目自動設定最大背景工作線程數目。 如需詳細資訊,請參閱 自動設定的最大背景工作線程數目。