sys.dm_server_registry (Transact-SQL)

为 SQL Server 的当前实例返回存储在 Windows 注册表中的配置和安装信息。每个注册表项对应返回一行。在 SQL Server 2008 R2 SP1 和更高版本中使用此动态管理视图返回一些信息,如主机上可用的 SQL Server 服务或 SQL Server 实例的网络配置值。

列名

数据类型

说明

registry_key

nvarchar(256)

注册表项名称。可以为 Null。

value_name

nvarchar(256)

项值名称。它显示在注册表编辑器的“名称”列。可以为 Null。

value_data

sql_variant

项数据的值。对于给定条目,此值显示在注册表编辑器的“数据”列。可以为 Null。

安全性

权限

需要具有服务器的 VIEW SERVER STATE 权限。

示例

A. 显示 SQL Server 服务

下面的示例为 SQL Server 的当前实例返回 SQL Server 和 SQL Server 代理服务的注册表键值。

SELECT key_name, value_name, value_data
FROM sys.dm_server_registry
WHERE key_name LIKE N'%ControlSet%';

B. 显示 SQL Server 代理注册表键值

下面的示例为 SQL Server 的当前实例返回 SQL Server 代理注册表键值。

SELECT key_name, value_name, value_data
FROM sys.dm_server_registry
WHERE key_name LIKE N'%SQLAgent%';

C. 显示 SQL Server 实例的当前版本

下面的示例返回 SQL Server 当前实例的版本。

SELECT key_name, value_name, value_data
FROM sys.dm_server_registry
WHERE value_name = N'CurrentVersion';

D. 显示在启动期间传递给 SQL Server 实例的参数

下面的示例返回在启动期间传递给 SQL Server 实例的参数。

SELECT key_name, value_name, value_data
FROM sys.dm_server_registry
WHERE registry_key LIKE N'%Parameters';

E. 返回 SQL Server 实例的网络配置信息

下面的示例为 SQL Server 的当前实例返回网络配置值。

SELECT key_name, value_name, value_data
FROM sys.dm_server_registry
WHERE keyname LIKE N'%SuperSocketNetLib%';