sys.configurations (Transact-SQL)
适用于:SQL Server
系统中每个服务器范围的配置选项值各占一行。
列名称 | 数据类型 | 说明 |
---|---|---|
configuration_id | int | 配置值的唯一 ID。 |
name | nvarchar(35) | 配置选项的名称。 |
value | sql_variant | 该选项的配置值。 |
最小值 | sql_variant | 配置选项的最小值。 |
最大值 | 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) 。 若要配置 Soft-NUMA,请参阅 Soft-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可能不同,这是预期行为。 例如:
“最大服务器内存 (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重启后生效。
权限
要求 公共 角色具有成员身份。
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈