首页 > 解决方案 > 从 FreeTDS 驱动程序迁移到 MSODBC17 驱动程序

问题描述

我需要将我们的 sql 驱动程序从 FreeTDS 更改为 msobdc17 以获得 msi 支持。该问题导致我们的插入操作性能下降。具体来说,当我们批量插入(批量大小〜= 50)时,访问同一数据库的并发进程(尽管有不同的连接)的性能会大大降低。我收到以下错误 - 可能相关:

无法执行事务操作,因为有处理此事务的待处理请求

我正在使用以下堆栈环境:

python:3.7.5-slim-stretch (Linux container)
msodbcsql17=17.6.1.1-1
mssql-tools=17.6.1.1-1 
unixodbc-dev=2.3.7
Django==1.11.29
django-pyodbc-azure==1.11.15.0
pyodbc==4.0.30

在此之前,我们有 FreeTDS 的版本:

freetds-dev=0.91-6.1+b4 
freetds-bin=0.91-6.1+b4 
tdsodbc=0.91-6.1+b4 

到目前为止,我试图“玩”:

  1. 启用火星
  2. 启用池连接
  3. 设置Threading=1odbcinst.ini

这些都没有帮助。

是否有人遇到过这个问题或有关配置参数的任何建议可以提供帮助?

标签: sql-serverpyodbcfreetdsdjango-pyodbc-azuremsodbcsql17

解决方案


推荐阅读