您目前已離線,請等候您的網際網路重新連線

當您嘗試連線到 SQL Server 2005 的執行個體時,出現錯誤訊息:"沒有任何處理程序是另一端的管道"或"現有的連線已強制會關閉由遠端主機 」

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

919710
徵狀
考慮下列案例。正在執行 Microsoft Windows XP 或 Microsoft Windows 2000 的電腦上安裝 Microsoft SQL Server 2005 的執行個體。您嘗試連接到執行個體。在這種情況下您收到其中一個下列的錯誤訊息,取決於您要用於連接通訊協定:
  • 當您嘗試使用具名的管道通訊協定或共用的記憶體通訊協定來連接到執行個體時,您會收到下列錯誤訊息:
    沒有任何處理程序是管道的在另一端。
  • 當您嘗試使用 TCP/IP 通訊協定來連接到執行個體時,您會收到下列錯誤訊息:
    由遠端主機已強制關閉現有的連線。
發生的原因
之所以發生這個問題,是因為有 AT_SIGNATURE 金鑰規格的憑證用執行個體的安全通訊端層 (SSL) 加密。具有 AT_SIGNATURE 金鑰規格的憑證不能用於 SQL Server 2005 中的 SSL 加密。執行的 Microsoft Windows Server 2003 電腦上憑證辨識為不正確。因此,SQL Server 服務不會載入該憑證,而且該服務不會啟動。不過,正在執行 Windows XP 或 Windows 2000 電腦上 SQL Server 服務載入該憑證,並成功啟動服務。這種行為會導致連線失敗。
解決方案
如果要解決這個問題,使用有效的憑證。您必須使用具有 AT_EXCHANGE 金鑰規格的憑證。

您可以使用 Certutil 公用程式 (Certutil.exe) 檢查憑證的金鑰規格。要這麼做,請您執行下列步驟:
  1. 在命令提示字元執行下列命令:
    Certutil-存放區-v 我-CertificateSerialNumber
    附註在這個命令 CertificateSerialNumber 會為您指定的執行個體憑證的序號的預留位置。若要取得憑證的序號、 找出下列登錄子機碼,並取得憑證的登錄項目值:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.1\MSSQLServer\SuperSocketNetLib
  2. 在 [結果] 文字尋找類似下列的區段:
    CERT_KEY_PROV_INFO_PROP_ID(2):
    金鑰容器 = c3748a7420955ed4ee1dffb26484a0df_64756357-bf11-4528-b106-59c407d8a6e8
    提供者 = Microsoft RSA SChannel 密碼編譯提供者
    ProviderType = c
    旗標 = 60
    KeySpec = 1
    為有效的憑證 KeySpec 屬性會有 1 的值。如果 KeySpec 屬性的值為 2,憑證有 AT_SIGNATURE 金鑰規格。因此,也會遇到 < 徵狀 > 一節中提到,當您使用憑證的問題。
狀況說明
Microsoft 已確認<適用於>一節所列之 Microsoft 產品確實有此問題。
其他相關資訊
我們強烈建議您使用 SQL 伺服器設定管理員 」 來指定執行個體的憑證。 SQL Server 組態管理員顯示只有有效的伺服器所使用的憑證。因此,您可以避免選取不是有效的憑證。

警告:本文已自動翻譯

內容

文章識別碼:919710 - 最後檢閱時間:11/20/2007 17:41:25 - 修訂: 1.2

  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Express Edition with Advanced Services
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Standard X64 Edition
  • kbmt kbsql2005connect kbsql2005engine kbtshoot kbexpertiseadvanced kbprb KB919710 KbMtzh
意見反應