【发布时间】:2020-06-02 08:46:52
【问题描述】:
我有一个烧瓶应用程序,它使用 SQLAlchemy (v1.3.17)/PyODBC (v4.0.30) 连接到 SQL Server。在我的开发设置中,SQL 服务器在 Docker 容器中运行,使用 mcr.microsoft.com/mssql/server:2017-latest-ubuntu 映像和 Docker Desktop for Mac (v2.3.0.3)。
这个设置已经使用了一段时间(大约 6 个月),但在过去一个月左右的时间里,我一直遇到以下错误
(pyodbc.OperationalError) ('08S01', '[08S01] [Microsoft][ODBC Driver 17 for SQL Server]TCP 提供程序:错误代码 0x274C (10060)
它间歇性地发生在代码的不同位置,当我再次重新运行相同的代码时它不会发生。所以我认为我的代码根本没有什么问题。
10060 似乎是连接错误,但由于它最初能够连接正常,我认为 pyodbc 在尝试保持连接活动时出现故障。
有没有其他人遇到过类似的事情?我需要在我的 SQL Server 配置中设置超时值吗?值得庆幸的是,在生产服务器(不在 Docker 中运行)上,我没有遇到这个问题。但它每隔几分钟就会发生一次,所以在我调试时非常令人沮丧。
【问题讨论】:
-
您是否尝试关闭连接池
pooling = False并查看问题是否仍然存在?
标签: sql-server docker sqlalchemy pyodbc