Azure Web App无法连接同资源组内SQL数据库问题求助
排查Azure Blazor Web App无法连接SQL数据库的问题
核心排查步骤:
检查SQL Server防火墙规则
虽然你开启了「允许Azure服务和资源访问此服务器」,但需确认该设置是在SQL服务器级别配置的(而非数据库级别)。修改后建议重新保存一次设置,等待5-10分钟缓存生效后再测试。验证App Service的连接字符串配置
部署后务必确认App Service的「配置>连接字符串」内容和本地测试的正确字符串完全一致:- 核对服务器名、数据库名、用户名、密码无拼写错误
- 确保字符串包含
Encrypt=True(Azure SQL强制要求加密连接),示例格式:Server=tcp:r---server.database.windows.net,1433;Initial Catalog=r---;Persist Security Info=False;User ID={你的用户名};Password={你的密码};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;
注意:App Service的连接字符串会覆盖代码中的硬编码配置,不要依赖本地代码里的连接值。
添加Web App出站IP到防火墙
部分场景下「允许Azure服务」规则可能无法覆盖所有流量,可手动添加Web App的出站IP:- 进入App Service的「属性」页面,复制所有「出站IP地址」
- 在SQL Server的防火墙规则中,逐一添加这些IP作为允许的客户端IP
检查SQL Server和数据库状态
登录Azure门户,确认SQL Server处于「运行中」状态,目标数据库未被暂停或处于异常状态,可在数据库「概述」页面查看可用性。排查超时与加密配置
若上述步骤无效,尝试延长连接字符串中的Connection Timeout(比如改为60),同时确保TrustServerCertificate=False(不要禁用证书验证)。
内容的提问来源于stack exchange,提问作者javirs
相关产品推荐
相关产品推荐

