在同時安裝 Visual Studio 2012 (含 LocalDB) 與 SQL Server 2008 R2 的電腦上,打開「電腦管理 → 服務」或 SQL Server 設定管理器查看 SQL Server 服務時,出現 遠端程序呼叫失敗 (0x800706be),無法檢視/管理服務。本文提供根因分析與解決步驟:移除衝突的 LocalDB、重新整理服務清單、處理連接埠佔用導致的服務啟動失敗。
現象
- 「電腦管理 → 服務與應用程式 → SQL Server 服務」顯示錯誤圖示,無法展開。
- SQL Server 設定管理器同樣報「遠端程序呼叫失敗」。

根因
**VS 2012 安裝的 Microsoft SQL Server Express 2012 LocalDB 與 SQL Server 2008 R2 的 WMI 提供者版本衝突**,導致 SQL Server 管理工具無法正常列舉服務。
解決步驟
1. 移除衝突的 LocalDB
- 開啟 控制台 → 程式與功能 (或第三方卸載工具)。
- 尋找 Microsoft SQL Server Express 2012 LocalDB。
- 右鍵 → 解除安裝。

2. 重新整理服務清單
- 回到「電腦管理 → 服務」,按 F5 重新整理。
- SQL Server 服務清單 (MSSQLSERVER, SQLSERVERAGENT, SQLBrowser 等) 應正常顯示。

3. 啟動 SQL Server (MSSQLSERVER) 服務
- 右鍵 SQL Server (MSSQLSERVER) → 啟動。
4. 處理「連接埠佔用」導致的啟動失敗
若啟動後仍失敗,檢視 Windows 事件檢視器 (系統日誌) 會發現 TCP 連接埠 1433 已被佔用 (通常是 SQLEXPRESS 執行個體搶佔)。

解決:停用/移除衝突的 Express 執行個體服務
- 在服務清單中找到 SQL Server (SQLEXPRESS)、SQL Server Agent (SQLEXPRESS)、SQL Browser (若非必要)。
- 將它們 **停止** 並設定啟動類型為 手動 或 停用。
- 確保同一時間只有一個資料庫引擎實例佔用 TCP 1433。

5. 再次啟動 MSSQLSERVER
- 右鍵 SQL Server (MSSQLSERVER) → 啟動,應成功進入「執行中」狀態。
驗證
- 開啟 SSMS,以
sa 或 Windows 驗證連線 . 或 (local)。
- 連線成功,物件總管正常顯示。
預防建議
- 開發機若需共存多版本 SQL Server,**安裝順序建議:舊版先裝,新版後裝** (或使用容器/虛擬機隔離)。
- VS 2012+ 安裝時可選擇**不安裝 LocalDB** (自訂安裝取消勾選)。
- 若必須共存,規劃不同執行個體使用不同連接埠 (透過設定管理員修改),並確保 SQL Browser 服務正常運行。
移除 LocalDB 衝突、釋放連接埠 1433,即可徹底解決 SQL Server 2008 R2 設定管理器 RPC 失效與服務啟動失敗問題。