连接到 Azure SQL Server 'A network-related or instance-specific error occurred while establishing a co



背景

我使用 EFCore (2.2.2)创建了一个 .Net Core (2.2.0) 应用程序。到目前为止,我一直在使用本地SQL Server实例,并尝试使用Azure SQL Server。

我已将数据库上下文中的连接字符串更新为 Azure 仪表板上的连接字符串。

我已经在VS2017的SQL Server对象资源管理器中登录到Azure中使用的帐户,并且数据库正在出现。

我使用的是代码优先方法,因此在运行应用程序之前没有可用的表。

错误

与网络相关的或 建立与 SQL Server 的连接时发生特定于实例的错误。 找不到服务器或无法访问服务器。
验证实例名称是否正确,以及 SQL Server 是否配置为允许远程连接。
(提供程序: SQL 网络接口,错误: 25 - 连接字符串无效)

连接字符串为:

.UseSqlServer(
@"Server = tcp:db.database.windows.net, 1433;
Initial Catalog = DB;
Persist Security Info = False;
User ID = username@db.database.windows.net;
Password = password; 
MultipleActiveResultSets = False; Encrypt = True; 
TrustServerCertificate = false; 
Connection Timeout = 60;");

我的本地网络没有出色的功能。这会对连接产生影响吗?

还是此连接字符串中存在错误?

编辑:我将连接超时更改为800秒,在~800秒后,连接再次超时,这次的错误略有不同:

错误 2

与网络相关的或 "与 SQL Server 建立连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。验证实例名称是否正确,以及 SQL Server 是否配置为允许远程连接。(提供程序:TCP 提供程序,错误:0 - 未知此类主机。

你可能没有提供从安全组远程连接的 Azure 数据库的权限。大多数情况下,不允许从远程计算机访问它。从数据库安全组和资源安全组中检查,并确保您的 IP 在允许列表中。

我将关闭它,因为它被证明是一个延迟问题。

相关内容