Sql-Server

SQL Server 2016 - 配置管理器 WMI 問題

  • January 28, 2022

背景:

Windows Server 2016 Core
SQL Server 2016 Enterprise (obviously 64-bit)
Windows Failover Cluster
SQL Failover Cluster

我正在嘗試通過連接到數據庫伺服器的本地電腦管理連接到 SQL Server 配置管理器。我展開服務和應用程序並點擊 SQL Server 配置管理器。但是,這是我看到的錯誤消息:

連接失敗。無法連接到 WMI 提供程序。您沒有權限或伺服器無法訪問。請注意,您只能使用 SQL Server 配置管理器管理 SQL Server 2005 和更高版本的伺服器。無效的命名空間

$$ 0x8004100e $$

我在命令提示符下試過這個:

mofcomp "%programfiles(x86)%\Microsoft SQL Server\130\Shared\sqlmgmproviderxpsp2up.mof"

然後說:

MOF 文件已成功解析 正在儲存庫中儲存數據… 完成!

然後我重新啟動 WMI 服務,關閉電腦管理,然後重新打開它。我得到了同樣的錯誤。

有誰知道如何解決這個問題?

謝謝!

PS - 幾天前我已經在另一個論壇上發布了這個,沒有人可以幫助我解決這個問題

更新 1:我已關閉客戶端和伺服器上的防火牆並嘗試連接到配置管理器,這給了我相同的錯誤消息

更新 2:我的使用者帳戶具有域管理員權限

更新 3:我執行了 Get-WMIObject 命令並獲得了 SystemDirectory、BuildNumber、RegisteredUser、SerialNumber 和版本資訊,所以我猜我可以遠端訪問 WMI?

更新 4:我有 SQLServerManager13.msc(位於伺服器的 C:\Windows\SysWOW64 中)並試圖在我的本地電腦上打開它,這給了我相同的 WMI 錯誤。

更新 5:我在兩個 SQL 節點上執行 SQL Server 修復(仍然是相同的消息)

更新 6:我執行了 winmgmt /verifyrepository 和 winmgmt /salvagerepository 並且都表示 WMI 儲存庫是一致的

我的解決方案:您需要在本地電腦上安裝 SQL Server 2016。然後您可以使用電腦管理連接到您的遠端 SQL Server 配置管理器的東西。

症狀 在 64 位電腦上,您安裝了 32 位(基於 x86)版本的 Microsoft SQL Server 的實例。在同一台電腦上,您安裝 64 位版本的 SQL Server 2008 的實例。如果您隨後解除安裝 64 位實例,則在打開 SQL Server 配置管理器時會收到以下錯誤消息:

無法連接到 WMI 提供程序。您沒有權限或伺服器無法訪問。請注意,您只能使用 SQL Server 配置管理器管理 SQL Server 2005 和更高版本的伺服器。無效的命名空間

$$ 0x8004100e $$ 如果您解除安裝 32 位實例,然後打開 SQL Server 配置管理器,也會出現此問題。原因 出現此問題的原因是在您解除安裝 SQL Server 實例時刪除了 WMI 提供程序。SQL Server 的 32 位實例和 64 位實例共享同一個 WMI 配置文件。此文件位於 %programfiles(x86)% 文件夾中。解決方法 要解決此問題,請打開命令提示符,鍵入以下命令,然後按 Enter:mofcomp “%programfiles(x86)%\Microsoft SQL Server\number\Shared\sqlmgmproviderxpsp2up.mof” Sqlmgmproviderxpsp2up.mof 文件必須存在於 %programfiles(x86)%\Microsoft SQL Server\number\Shared 文件夾中。

number 的值取決於 SQL Server 的版本:nnn

Microsoft SQL Server 2012 110 Microsoft SQL Server 2008 R2 100 Microsoft SQL Server 2008 100 Microsoft SQL Server 2005 90 執行 Mofcomp 工具後,重新啟動 WMI 服務以使更改生效。服務名稱是 Windows management Instrumentation。

狀態 Microsoft 已確認這是“適用於”部分中列出的 Microsoft 產品中的問題。

好吧,如果您已經驗證了您嘗試訪問的內容存在並且可以訪問,這很好,這是一個權限問題。

我要檢查幾件事:即使您是域管理員,您仍然可能會遇到權限問題,因為我曾經發生過類似的奇怪事情。可能有幫助的一件事是找到包含您需要的文件的文件夾,並明確添加具有完全控制權的帳戶,這應該適用於其中的所有子文件和文件夾。

另一個要問的問題是什麼帳戶試圖訪問它?ms sql 服務帳戶是否是嘗試訪問它的帳戶,如果是,該帳戶是否具有對文件夾/文件的必要權限。

引用自:https://dba.stackexchange.com/questions/157487