(provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)

与SQLServer建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且SQLServer已配置为允许远程连接。(provid... 与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)

源错误:

行 86: //返回布尔值
行 87: return authenticated;
行 88: }
行 89:
行 90: }
展开
 我来答
cvicse_0
推荐于2016-08-20 · TA获得超过148个赞
知道答主
回答量:116
采纳率:100%
帮助的人:88.6万
展开全部
SQL Server Configuration Manager 里

TCP/IP 开启 → 启用

还不行,参照 来自博客园qingshansima的文章:
1. 确保服务器端的数据库中存在sa,并支持混合登录模式.默认安装的时候,可能会忽略建立sa.

2. 确保服务器端的数据库是支持远程调用的.打开SQL Server Management Studio,选择该数据库,右键菜单"Properties",在打开的对话框中选择Connections,把Allow remote connections to this server选上.

3. 确保服务器端的SQL服务的TCP/IP是Enable的.打开SQL Server Configuration Manager. 选择SQL Server 2005 Network Configuration下的Protocols for SQL2005( 我安装的SQL示例名为SQL2005), 把Named Pipes和TCP/IP都修改为Enabled,默认是Disabled.

4. 确保服务器端的SQL实例的远程调用是支持TIP/IP和named pipes的. 打开SQL Server Surface Area Configuration Manager,在打开的页面中选择Surface Area Configuration for Services and Connections.选中实例的Remote Connections,把Using both TCP/IP and named pipes选中.

5. 重启服务器端的SQL Server 2005服务,确保SQL Server Agent和SQL Server Browser的服务也启动了. 默认都是需要手动启动,可以改成Automatic.

6. 因为服务器端的操作系统是WinXp+SP2,所以还需要检查防火墙.确保防火墙中的1433端口打开了.

另外, SQL Server 2005的默认端口可能不是1433. 我们需要手动修改一下. 打开SQL Server Configuration Manager. 选择SQL Server 2005 Network Configuration下的Protocols for SQL2005( 我安装的SQL示例名为SQL2005), 查看TCP/IP的属性.在打开的对话框中选择IP Address, 把到IPAll下的TCP Dymanic Ports改为0,TCP Port的值修改为1433.

在Windows防火墙中的Exceptions中Add Port:TCP 1433和UDP 1434, 同时还需要Add Program.先打开SQL Server Configuration Manager,在SQL Server 2005 Services中选中SQL Server,查看属性,在Advanced中记下Instance ID.如(MSSQL.1)

在防火墙的Exceptions中Add Program,找到诸如.../Microsoft SQL Server/MSSQL.1/MSSQL/Binn/sqlservr.exe,添加.

所有这些都做完了,客户端应该就可以访问了,最好客户端也在自己的Configration Manager的Client Configuration中设置TCP/IP为Enabled.
传奇勇者
2012-04-05 · TA获得超过747个赞
知道大有可为答主
回答量:1706
采纳率:75%
帮助的人:776万
展开全部
有几个可能:
1.数据库可能没征程启动,用数据库客户端连接看看;
2.数据库配置有问题,禁用远程连接;
3.连接串出错,检查或是用系统生成连接串。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-04-06
展开全部
开始==程序==SQL server 2005==配置工具==SQL Server 外围应用配置器,,,
打开后,点击“服务和连接的外围应用配置器”,将MSSQLSERVER- database Engine-- 远程连接的“本地连接和远程连接”变更为:同时使用TCP/IP和named pipes
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式