使用 WMI 提供程序进行配置管理

适用于:SQL Server

本文提供了有关如何使用 WMI 提供程序进行计算机管理编程的指导。

绑定

用于配置管理的 WMI 提供程序是一个 COM 对象模型,它支持早期绑定和后期绑定。 使用后期绑定,可以使用脚本语言(如 VBScript)以编程方式操作SQL Server服务、网络设置和别名。

指定连接字符串

应用程序通过连接到提供程序定义的 WMI 命名空间,将用于配置管理的 WMI 提供程序定向到 SQL Server 实例。 Windows WMI 服务将此命名空间映射到提供程序 DLL,并将 DLL 加载到内存中。 SQL Server的所有实例都使用单个 WMI 命名空间表示。

命名空间默认为以下格式。 在 格式中, VV 是SQL Server的主版本号。 可以通过运行 SELECT @@VERSION;来发现该数字。

\\.\root\Microsoft\SqlServer\ComputerManagementVV

使用 PowerShell 进行连接时,必须删除前导 \\.\ 。 例如,以下 PowerShell 代码列出了 SQL Server 2016(主版本 13)的所有 WMI 类。

Get-WmiObject -Namespace 'root\Microsoft\SqlServer\ComputerManagement13' -List

可以使用以下 PowerShell 代码查询所有可用的 WMI ComputerManagement 命名空间。

gwmi -ns 'root\Microsoft\SqlServer' __NAMESPACE | ? {$_.name -match 'ComputerManagement' } | select name

注意: 如果通过 Windows 防火墙进行连接,则需要确保计算机已正确配置。 请参阅 Microsoft MSDN 网站上的 Windows Management Instrumentation 文档中的“通过 Windows 防火墙进行连接” 文。

权限和服务器身份验证

若要访问用于配置管理的 WMI 提供程序,客户端 WMI 管理脚本必须在目标计算机上的管理员上下文中运行。 您需要具有要管理的计算机上的本地 Windows Administrators 组的成员身份。

管理员可以设置组策略以控制用户对 WMI 提供程序的访问。 有关设置组策略的详细信息,请参阅SQL Server 配置管理器帮助中的“组策略和 MMC”。

WMI 管理脚本可用于更新运行SQL Server服务的帐户。

用于配置管理的 WMI 提供程序支持安全证书。 有关证书的详细信息,请参阅 加密层次结构

另请参阅

SQL Server 配置管理器