[英]Can't connect to SQL Database from Azure Application Service
我有两个运行 .NET Core 3.1 应用程序的应用程序服务连接到 Azure SQL 数据库。 一个应用程序是一个简单的测试应用程序,用于使用相同的 DI 管道测试与数据库的连接性,另一个是完整的应用程序。 测试应用程序连接到数据库并生成所需的 output,而生产应用程序无法连接并显示以下异常消息:
与 SQL 服务器建立连接时发生与网络相关或特定于实例的错误。 服务器未找到或无法访问。 验证实例名称是否正确,并且 SQL 服务器配置为允许远程连接。 (提供者:SNI_PN11,错误:26 - 错误定位服务器/指定实例)
我已经修改了数据库的规则以包括我的开发工作站 IP 地址,并且两个应用程序都按预期连接到数据库。 在数据库防火墙上,我还做了以下事情:
virtual ip address
的 IP 地址。 这两个应用服务共享一个虚拟 IP 地址。Allow Azure services and resources to access this server
设置。 应用程序的appsettings.json
文件是相同的。
当我将测试应用程序部署到生产服务器时,它仍然可以工作。 生产应用程序中的某些内容导致连接失败。 为什么生产应用程序无法连接,还有什么办法可以解决问题?
想知道我的连接字符串是否有问题,我添加了一些日志记录以将其写入日志文件。 我意识到连接字符串是错误的——它试图连接到不同的数据库。 AppSettings.Production.json 覆盖了连接字符串,我的测试应用程序有一个空的 AppSettings.Production.json 这就是它起作用的原因。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.