Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> 電腦軟體教學 >> 伺服器技術 >> 關於伺服器

SQL Server「已建立連接但登錄過程出錯:管道另一端無進程」完整排查指南

編輯:關於伺服器

錯誤現象

已成功與服務器建立連接,但是在登錄過程中發生錯誤 (provider: 共享內存提供程序, error: 0 - 管道的另一端上無任何進程。)

根因分析

客戶端嘗試通過 Shared Memory(共享內存) 或 Named Pipes(命名管道) 協議連接 SQL Server,但服務端對應協議未啟用或服務未正常運行。錯誤「管道另一端無進程」意味著服務端管道監聽器不存在。

解決方案

方案一:啟用 Named Pipes 與 TCP/IP 協議(標準修復)

  1. 遠程桌面登錄 SQL Server 服務器
  2. 開始 → 所有程序 → Microsoft SQL Server 2005/2008 → 配置工具 → SQL Server 配置管理器
  3. 展開「SQL Server 網絡配置」→ 「MSSQLSERVER 的協議」
  4. 右鍵 Named Pipes → 「啟用」
  5. 右鍵 TCP/IP → 「啟用」(確保 IPAll 端口 1433)
  6. 右鍵「SQL Server 服務」→ 「SQL Server (MSSQLSERVER)」→ 「重新啟動」
SQL Server配置管理器協議啟用

方案二:外圍應用配置器啟用遠程連接(補充)

  1. 開始 → 所有程序 → Microsoft SQL Server → 配置工具 → SQL Server 外圍應用配置器
  2. 選擇「服務和連接的外圍應用配置器」
  3. 展開 MSSQLSERVER → Database Engine
  4. 選擇「遠程連接」→ 「本地和遠程連接」→ 「僅使用 TCP/IP」
  5. 點擊「應用」
  6. 切換到「服務」頁籤 → 停止 SQLEXPRESS → 重新啟動 SQLEXPRESS

方案三:客戶端連接字符串強制指定協議(繞過問題)







Network Library=dbmssocn 強制使用 TCP/IP Sockets,避開本地協議問題。

協議選擇指南

協議適用場景性能配置複雜度
Shared Memory客戶端與 SQL Server 同機器最高(無網絡開銷)零配置,默認首選
TCP/IP跨機器、跨網段、互聯網、生產環境標準高,穩定可控需開放端口、配置防火牆
Named Pipes同一局域網、舊應用兼容、域環境 Kerberos中等,依賴 SMB需啟用 File and Printer Sharing
VIA高性能集群、專用硬體極高需專用硬體、已棄用

生產環境建議:僅啟用 TCP/IP,禁用其他協議,減少攻擊面。

驗證連接


# 服務端驗證端口監聽
netstat -an | findstr 1433
# 應見 0.0.0.0:1433 LISTENING

# 客戶端測試連接
telnet sql_server_ip 1433
# 或 PowerShell
Test-NetConnection -ComputerName sql_server_ip -Port 1433

# 連接字符串測試
sqlcmd -S tcp:sql_server_ip,1433 -U sa -P *** -Q "SELECT @@VERSION"

常見誤區

  • 以為「共享內存」錯誤只發生在本地:遠程連接若客戶端配置優先級高於 TCP/IP,也會嘗試 Shared Memory 並失敗
  • 只啟用協議不重啟服務:配置管理器修改協議後必須重啟 SQL Server 服務生效
  • 忽略 SQL Browser 服務:命名實例連接需 SQL Browser (UDP 1434) 解析端口,若用默認實例 MSSQLSERVER 可禁用

總結

「管道另一端無進程」本質是服務端 Named Pipes/Shared Memory 協議未啟用或服務未運行。標準修復:SQL Server 配置管理器啟用 Named Pipes 和 TCP/IP → 重啟 SQL Server 服務。生產環境建議僅保留 TCP/IP 協議,客戶端連接字符串強制指定 Network Library=dbmssocn,徹底規避本地協議問題。

Copyright © Windows教程網 All Rights Reserved