分享方式:


sys.configurations (Transact-SQL)

適用於:SQL Server

包含系統中每個全伺服器組態選項值的數據列。

資料行名稱 資料類型 描述
configuration_id int 組態值的唯一標識碼。
name nvarchar(35) 組態選項的名稱。
value sql_variant 已設定此選項的值。
minimum sql_variant 組態選項的最小值。
maximum sql_variant 組態選項的最大值。
value_in_use sql_variant 執行值目前對這個選項有效。
description nvarchar(255) 組態選項的描述。
is_dynamic bit 1 = 執行 RECONFIGURE 語句時生效的變數。
is_advanced bit 1 = 只有當已設定 show advancedoption,才會顯示變數。

備註

如您所有伺服器群組態選項的清單,請參閱 伺服器群組態選項 (SQL Server)

注意

如需資料庫層級組態選項,請參閱 ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL) 。 若要設定軟體 NUMA,請參閱 軟體 NUMA (SQL Server)

sys.configurations 目錄檢視可用來判斷config_value(值數據行)、run_value(value_in_use數據行),以及組態選項是否為動態的(不需要重新啟動伺服器引擎或is_dynamic數據行)。

注意

sp_configure結果集中的config_value相當於 sys.configurations.value 數據行。 run_value相當於sys.configurations.value_in_use數據行。

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

select * from sys.configurations where value != value_in_use

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

有組態選項,其中值和value_in_use可能不相同,這是預期的行為。 例如:

“max server memory (MB)” - 預設值 0 會顯示為 value_in_use = 2147483647

“min server memory (MB)” - 預設值 0 可能會顯示為 value_in_use = 8 (32 位) 或 16 (64 位)。 在某些情況下, value_in_use 為 0。 在此情況下,“true” value_in_use 是 8 (32 位) 或 16 (64 位)。

is_dynamic數據行可用來判斷組態選項是否需要重新啟動。 is_dynamic=1 表示當 RECONFIGURE(T-SQL) 命令執行時,新值會「立即」生效(在某些情況下,伺服器引擎可能不會立即評估新值,但在正常執行過程中會執行這個值)。 is_dynamic=0 表示即使執行 RECONFIGURE(T-SQL) 命令,變更的組態值才會生效。

對於不是動態的組態選項,無法判斷是否已經執行 RECONFIGURE(T-SQL) 命令來執行安裝組態變更的第一個步驟。 重新啟動 SQL Server 以安裝組態變更之前,請執行 RECONFIGURE(T-SQL) 命令,以確保所有組態變更在 SQL Server 重新啟動後都會生效。

權限

需要 public 角色的成員資格。

另請參閱

全伺服器組態目錄檢視 (Transact-SQL)
目錄檢視 (Transact-SQL)