linux pyodbc连接出现错误“无法打开lib'SQL Server Native Client11.0'”

时间:2019-04-30 23:07:51

标签: python sql sql-server linux

我在尝试在Linux容器环境中使用python连接到SQL数据库时遇到问题。当pyodbc通过查找驱动程序尝试与SQL连接时,我遇到以下错误。

sqlalchemy.exc.DBAPIError: (pyodbc.Error) ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'SQL Server Native Client11.0' : file not found (0) (SQLDriverConnect)")

查看后,似乎pyodbc无法找到以下内容:

odbcinst -j
unixODBC 2.3.7
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /home/gtx914/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8

当我再次检查时,这些.ini文件在我的Linux环境中不存在。我不确定为什么pip install pyodbc和uixodbc没有安装正确的依赖项来查找驱动程序。这里有人知道解决方法吗?一个警告是我无法使用任何sudo命令,因为在此环境中我没有root访问权限。

1 个答案:

答案 0 :(得分:0)

ODBC驱动程序本身无法通过pip安装。您需要按照此处的说明使用apt-get(或类似工具)将其安装到操作系统或容器中:

Installing the Microsoft ODBC Driver for SQL Server on Linux and macOS