4

在我們的項目用戶使用NHibernate 2.1.1與SQL Server 2008與.NET 3.5。命名管道提供程序,錯誤:40 - 無法打開與SQL Server的連接?

我面臨SQL Server的奇怪問題。我們開發了windows服務,並安裝了它,並且運行良好。不幸的錯誤,當我停止SQL Server中,NHibernate的拋出異常

System.Data.SqlClient.SqlException: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

但在重新啓動SQL Server之後,無法連接到SQL Server,還拋出了同樣的錯誤。但是我能夠通過查詢分析器/管理工作室連接SQL Server。

請任何機構可以幫助我解決問題?

感謝

NRK

+0

分析器/工作室是否也使用*命名管道提供程序? – 2010-06-25 09:37:09

+0

NO。它使用默認協議。 – nRk 2010-06-25 10:41:56

回答

1

轉到\開始菜單\程序\ Microsoft SQL Server的2008 \配置工具,啓動SQL Server配置管理器,使您需要的連接協議。

+0

啓用所有必要的協議。但以前工作正常,重新啓動後只有它給問題...爲什麼它發生..? – nRk 2010-06-25 10:34:09

1

我知道你已經有一個答案,但我得到了同樣的錯誤,但解決方案是不同的,也許這會幫助別人。

當我設置ASP.Net的會話變量保存在DB我得到了同樣的錯誤

provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server

我的問題的原因是數據庫不能上的SQL Server,我發現正在連接到。一旦我正確創建數據庫,一切正常。

鑑於我本來期望的錯誤信息

provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified

0

檢查以下 (a)首先makesure這個實例的數據庫服務正在運行 ...使用Configuration Manager 問題的原因(b)如果服務正在運行,檢查是否是一個命名實例。在 這種情況下SQL Server Browser服務正在運行。 (c)檢查本地和遠程的遠程連接已啓用 使用TCP/IP連接 - 使用SQL Server表面區域配置 查看和配置工具 (d)檢查所有協議是否啓用 - 使用SQL 配置管理器 - SQL Server網絡配置 - MSSQLSERVER的協議 - 啓用TCP/IP和命名管道

0

在Sql Server Configuration Manager程序中,啓動SQL SERVER,啓用TCP/IP連接。如果需要,請允許防火牆中的端口。

相關問題