2015-10-08 79 views
1

当我尝试访问托管在Azure上的网站时,出现以下错误。 即时通讯使用数据库的connectionString从数据库管理面板上Azure的直接复制,但coudlnt连接成功无法连接到Azure SQL服务器,错误:

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)]

任何想法如何真正解决呢?感谢

+0

您是否在基于IaaS的SQL服务器或托管的SQL Azure数据库上使用此功能?如果是前者,确保你已经打开了适当的端口,如果后者是你设置了基于IP的访问规则? – BrentDaCodeMonkey

回答

0

的SQL,则在Azure上托管,不,我还没有听说过关于建立基于IP的访问规则,虐待检查了这一点

+0

这应该是一个评论。 –

2

您需要添加您的Azure服务或外部IP地址的规则进入到DB服务器防火墙。

遵循以下步骤:

  1. 转到Db的仪表盘
  2. 在DB属性点击服务器名称

DB server properties

  • 然后在新面板转到“所有设置”
  • db server settings

  • 然后转到防火墙
  • db server firewall

  • 使从天蓝色服务接入
  • 如果需要它,添加你的网络应用程序的IP地址。
  • db server firewall rules

    0

    感谢回答,但解决的办法是,我没有注意到我使用的MySQL是SQL数据库,我用

     <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> 
    

    ,而不是

    <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.7.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" /> 
    

    不幸的是,错误没有提供任何关于提供商不兼容的信息;>

    btw,对不起,没有注意到我用不同的帐户发表了一篇文章

    相关问题