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连接。如果需要,请允许防火墙中的端口。

相关问题