我可以在命名实例上使用 azure 混合 sql 连接吗?

mwi*_*ill 3 sql connection port azure hybrid

找不到明确的答案,或者让它发挥作用。该站点说“要使用具有混合连接的本地 SQL Server 或 SQL Server Express 数据库,需要在静态端口上启用 TCP/ IP。SQL Server 上的默认实例使用静态端口 1433,而命名实例则不使用。 ”

http://azure.microsoft.com/en-us/documentation/articles/web-sites-hybrid-connection-connect-on-premises-sql-server/

我在静态端口 (1555) 上安装了命名实例,如下所述:

http://blogs.msdn.com/b/arvindsh/archive/2012/09/08/how-to-assign-a-static-port-to-a-sql-server-named-instance-and-avoid-一个常见的陷阱.aspx

我在 azure 门户中配置了端口 1555 的混合连接,它显示为“已连接实例”。

在我的应用程序的连接字符串中,我指定了实例名称和端口,就像应用程序在本地一样,在本地运行时确实有效。(服务器\实例,1555)

我打开了所有适当的防火墙端口,但是从 azure 运行应用程序时,我收到标准连接错误:与 SQL Server 建立连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:TCP 提供者,错误:0 - 不知道此类主机。)

支持混合连接的非标准端口上的命名实例也是如此,如果是,则连接字符串是标准格式:server\instanceName,port#

谢谢

小智 5

这是一个旧帖子,所以大概不再相关了。但万一其他人发现它有用...是的,您可以在非标准端口上使用命名实例进行混合连接,我有几个这样的连接。作为参考,连接字符串需要采用以下格式

Driver={SQL Server};Server=SERVER_NAME.DOMAIN.com\INSTANCE,PORT;Database=DATABASE_NAME;UID=USERNAME;PWD=PASSWORD

我发现它不起作用(对我来说),除非我也用域完全限定了服务器名称