【问题标题】:IIS 8 sql server provider: Named Pipes Provider, error: 40IIS 8 sql 服务器提供程序:命名管道提供程序,错误:40
【发布时间】:2014-01-24 13:18:58
【问题描述】:

今天我试图在 IIS 8 上托管我的网站,这个网站是用 .Net MVC 开发的。 当我尝试对托管在我的 Intranet 中的另一台服务器中的 SQL 服务器进行查询时,我收到以下错误消息:提供程序:命名管道提供程序,错误:40,但是如果我在 IISExpress 上托管我的网站(Visual 中的本机Studio),或者我从 SQL server managemet 进行查询,一切正常。 我使用这个字符串连接:

 Data Source=serversql;Initial Catalog=HD;Persist Security Info=True;User ID=sa;Password=******* 

serversql 是一个别名,它指向托管在另一台机器上的 SQL 服务器。我是这样设置的: cliconfg set up Image

【问题讨论】:

  • 向我们展示您的 IIS 和 IISExpress 的 SQL 连接字符串。
  • 这里是连接字符串:Data Source=serversql;Initial Catalog=HD;Persist Security Info=True;User ID=sa;Password=*******
  • 您的 SQL Server 在哪里?它与您的 IIS 主机在同一台服务器上吗?您可以使用任何其他工具(VS、Management Studio、Excel 等)访问它吗?
  • SQL Server 不在同一个 IIS 的服务器上,我可以通过 Management Studio 访问它。
  • 您测试的 IIS 服务器和 IIS Express 服务器是否在同一台服务器上?

标签: sql-server iis-8


【解决方案1】:

最后,解决方案是在sqlserver的服务器中启用TCP连接,并在IIS的机器上创建一个别名TCP来与服务器通信,我认为IIS 8不允许NamePipes。

【讨论】:

    【解决方案2】:

    在 Sql Server 配置管理器程序中启用 TCP/IP 连接并允许防火墙中的端口确保没问题。

    名称管道可用,也可以启用,但默认值为 false。 如果设置为 true,则在请求终止时刷新命名管道。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-08
      • 2016-09-18
      • 2017-05-30
      相关资源
      最近更新 更多