我们有连接到Azure SQL数据库的python函数应用程序。它一直运行良好,直到3月底,当我们开始间歇性地遇到以下错误:“[08001] [Microsoft][ODBC Driver 17 for SQL Server]TCP Provider:错误代码0x68(104)(SQLDriverConnect)”
它似乎更频繁地发生在更高的体积天,高达15%的调用遇到这个错误。所有的研究似乎指向网络问题,但是不能关闭sql会话导致这个错误,以及,不管体积?还有什么可能的情况下这个问题?
AZSQL和function app都设置为1.2 TLS,并将sqlalchemy固定为1.4.47。
1条答案
按热度按时间lp0sw83n1#
如果Azure SQL连接在你的函数应用中间歇性地失败,请确保你的函数应用没有在任何企业代理、LAN或VPN之后运行,或者任何防火墙连接正在限制与Azure SQL的连接。
我尝试在受限的防火墙网络LAN中使用Pyodbc连接到Azure SQL,并收到以下错误,即使SQL服务器的示例名称,数据库和连接字符串是正确的,在Azure SQL服务器网络选项卡中允许客户端IP。请参阅下面:-
错误:-
当我尝试在没有任何网络限制的情况下使用客户端计算机连接到Azure SQL时,我能够像下面这样查询Azure SQL数据库:
我的Python代码:-
输出:-
要检查Azure SQL连接失败,请选择Azure SQL Server〉诊断和解决问题〉搜索连接:数据库可用性和连接错误故障排除〉选择连接超时或断开连接,并执行解决方案中给出的见解,如下所示:-
选择问题的开始时间并粘贴您的错误代码,点击提交以获得洞察:-
您可以从结果中获得见解。
您还可以运行建议中给出的PowerShell脚本,以解决间歇性超时或连接问题并获得见解,如下所示:
您可以通过运行SSMS中的脚本到系统表来检查连接问题,如下所示:
验证码:-
输出:-
参考号:-
Troubleshoot common connection issues to Azure SQL Database - Azure SQL Database | Microsoft Learn
Error code 0x68 (104) (SQLGetData) · Issue #680 · mkleehammer/pyodbc · GitHub By v-chojas
[pyodbc.OperationalError:Copyright © 2018 - 2019 www.cnjs.com版权所有