独上高楼网站
  •    你所在位置:首页 VS.netASP.net编程经验〉命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接
  • 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接
  • 作者:佚名  文章来源:网上下载  发布日期:2007-05-27  浏览次数:2062
  • 打印这篇文章
  • 用过VS2005开发兄弟们都知道,在新建一个网站项目时候,要求选择一个网站位置,既可以不使用IIS做开发WEB服务器,而使用文件系统,也就是VS2005自带一个WEB服务器运行网站.

    我有一个项目,是在"文件系统"方式下开发,数据库系统是SQLSERVER2000,在开发时,一切正常.
    但是在发布时,我们要使用IIS,当项目布署到IIS下时,访问SQLSERVER2000代码无法执行.连接数据库时被强制要求访问SQLSERVER2005,并提示了
    <
    在建立与服务器连接时出错在连接到 SQL Server 2005 时在默认设置下 SQL Server 不允许进行远程连接可能会导致此失败 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 连接) 
    >
    错误信息.但我连接确实是SQLSERVER2000.
    于是我切换回了"文件系统"方式,错误消失了....-_-"


    我估计是设置上问题,因为我又新建了一个网站项目,使用IIS做为WEB服务器,手写了一段非常简单数据库连接代码,也出现同样错误提示,测试代码如下:
    SqlConnection sqlConnection = new SqlConnection(ConnString);
    sqlConnection.Open();
    在OPEN()时出错.

    请有经验老大指点一下,问题出在哪里,谢谢~~~



    非常感谢大家,,,问题已经解决了,解决办法如下:

    1.按楼上多位兄弟提出,
    打开IIS属性-》虚拟目录属性-》选Net 2.0-》点‘编辑配置’-》删除所有连接SQlexpress
    当然,最好连全局配置也删除,
    打开IIS属性-》站点属性-》选Net 2.0-》点‘编辑全局配置’
    -》删除所有连接SQlexpress

    2.在应用服务器日志中,找到了
    异常信息: 
        异常类型: SqlException 
        异常消息: 在建立与服务器连接时出错在连接到 SQL Server 2005 时在默认设置下 SQL Server 不允许进行远程连接可能会导致此失败 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 连接) 
     
    请求信息: 
        请求 URL: http://localhost/Test/default.aspx 
        请求路径: /Test/default.aspx 
        用户主机地址: 127.0.0.1 
        用户:  
        是否已经过身份验证: False 
        身份验证类型:  
        线程帐户名: NT AUTHORITY\NETWORK SERVICE 

    于是我判断是SQLSERVER服务器问题.



    3.在数据库日志中发现了
    您运行 Microsoft SQL Server 2000 版本或 Microsoft SQL Server 2000 Desktop Engine (也称为 MSDE) 和 Microsoft Windows Server 2003 家族使用时存在已知 安全弱点为了减少计算机被某些病毒攻击Microsoft SQL Server 2000MSDE 或 两者 TCP/IP 和 UDP 网络端口被禁用要启用这些端口您必须从 http://www.microsoft.com/sql/downloads/default.asp 或  http://www.microsoft.com/china/sql/downloads/default.asp 安装一个修补程序 或 Microsoft SQL Server 2000 或 MSDE 最新服务包

    于是我换了一台刚装好系统服务器,并下载了SP4补丁打上了.

    果然,连起来再试,成功了....
    看来,还是要多打补丁啊....
  • 打印这篇文章
  • 与本文主题相关的文章
  • 返回首页