SQL Server 2016 SP1 CU3上的Get-WmiObject什么都不返回

时间:2017-06-20 14:55:37

标签: sql-server powershell wmi

我使用CU3更新了我的SQL Server 2016 SP1,但是,在更新后,另一个获取WMI指标的程序停止工作。该程序只在Powershell中运行WQL查询。示例查询是:

Get-WmiObject -Class Win32_PerfRawData_MSSQLSERVER_SQLServerGeneralStatistics

在更新之前,在powershell中,这将返回适当的WMI对象。现在,在powershell中,它只返回任何内容(没有身份验证错误或任何输出)并给出另一个提示。当我更新服务器时,更新确实挂起,我不得不运行修复。 SQL Server print @@VERSION中的查询提供Microsoft SQL Server 2016 (SP1-CU3) (KB4019916) - 13.0.4435.0 (X64),其他所有内容都可以顺利地与它进行交互。

在任何其他计算机上运行相同的查询(也使用SQL Server 2016 SP1 CU3)可以提供正确的输出。但是,这些在更新期间没有任何问题。

我尝试过:

  1. 在PerfMon中打开相应的计数器(例如,来自SQL Server常规统计信息的用户连接)可以提供正确的指标。

  2. get-ciminstance -classname Win32_PerfRawData_MSSQLSERVER_SQLServerGeneralStatistics也不会返回任何内容。

  3. gwmi Win32_PerfRawData_MSSQLSERVER_SQLServerGeneralStatistics也不会返回任何内容。

  4. [Boolean] (Get-WmiObject -Class Win32_PerfRawData_MSSQLSERVER_SQLServerGeneralStatistics)返回False

  5. 已验证正在运行Get-WmiObject -Query "SELECT * FROM meta_class" | Select-String "RawData" | Select-String "sql"为WMI对象提供我正在查询的确切名称。 (例如,列表条目为\\$COMPUTER_NAME\root\cimv2:Win32_PerfRawData_MSSQLSERVER_SQLServerGeneralStatistics

  6. 使用-Authentication 1运行查询会发出正确的Access is denied错误。

  7. Powershell以管理员身份运行,该帐户是服务器上的本地管理员。

  8. 知道为什么查询什么都没有返回?更新是否有可能使SQL服务器处于不正常状态,而WMI计数器未正确导出?但那么为什么PerfMon计数器工作正常呢?

0 个答案:

没有答案