0x800706BA - RPC 伺服器不可用# 服務名稱 - SQL Server (MSSQLSERVER) - SQL Server Agent - SQL Server Browser - Remote Procedure Call (RPC) / RPC Locator - DCOM Server Process Launcher - Windows Management Instrumentation (WMI)
在 services.msc 中確認上述服務均為 運行中、啟動類型為 自動。
dcomcnfgEveryone / ANONYMOUS LOGON / NETWORK SERVICE / 具體服務帳號 → 勾選 本機啟用、本機啟動# 以管理員身份執行 cmd winmgmt /verifyrepository winmgmt /salvagerepository # 若仍失敗 winmgmt /resetrepository # 需重啟 WMI 服務:net stop winmgmt && net start winmgmt
netsh advfirewall firewall add rule name="SQL Server RPC" dir=in action=allow protocol=TCP localport=135,445,1433,49152-65535HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQLServer\SuperSocketNetLib\Tcp\IPAll # 確認 TcpPort = 1433, TcpDynamicPorts = 0 (固定埠)
cd "C:\Program Files\Microsoft SQL Server\130\Shared" mofcomp sqlmgmproviderxpsp2up.mof # 版本路徑依實際安裝調整 (130=2016, 140=2017, 150=2019)
| 場景 | 最可能原因 | 優先處理 |
|---|---|---|
| 服務啟動即停止,事件日誌 RPC 錯誤 | DCOM 啟動權限缺失 | 步驟 2 |
| Configuration Manager 打不開,WMI 錯誤 | WMI 儲存庫損毀 | 步驟 3 |
| 本機連得上,遠端連不上 | 防火牆阻擋 RPC 動態埠 / SQL Browser 未啟動 | 步驟 4 + 啟動 SQL Browser |
| 叢集/可用性群組環境 | 網路名稱資源/叢集 RPC 依賴 | 檢查叢集網路、DNS、SPN |
SQL Server RPC 失敗本質是 DCOM 權限、WMI 完整性、防火牆連接埠 三大支柱問題。依序驗證服務狀態 → DCOM 權限 → WMI 儲存庫 → 防火牆 → 註冊表/提供者註冊,可解決 95% 以上案例。叢集環境額外關注網路名稱資源與 SPN 設定。