【问题标题】:Unable to connect to SQL server from linux pyodbc无法从 linux pyodbc 连接到 SQL Server
【发布时间】:2019-10-13 01:39:07
【问题描述】:

下面是从 linux 连接 SQL server 时的错误:

connection = pyodbc.connect(connect_string)
pyodbc.Error: ('01000', u"[01000] [unixODBC][Driver Manager]Can't open lib /usr/local/lib/libmsodbcsql.17.dylib' : file not found (0) (SQLDriverConnect)")
Details in odbcinst -j

odbcinst -j

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

【问题讨论】:

标签: python linux odbc pyodbc pymssql


【解决方案1】:

试试这样的:

cnxn = pyodbc.connect('DRIVER={/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.3.so.1.1};SERVER='+server+';DATABASE='+database+';uid='+username+';pwd='+ password)

“{/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.3.so.1.1}”是您需要在系统中找到的驱动程序。

"/usr/local/lib/libmsodbcsql.17.dylib"

【讨论】:

  • 分段错误(核心转储)收到此错误 cxnn = pyodbc.connect('DRIVER={/opt/microsoft/msodbcsql/lib64/libmsodbcsql-11.0.so.2270.0};SERVER={localhost} ;DATABASE={test};uid={user};pwd={1234}')
  • 但是你的 libmsodbcsql-11.0.so.2270.0 在 /opt/microsoft/msodbcsql/lib64/ ???
  • 是的 libmsodbcsql-11.0.so.2270.0 在 /opt/microsoft/msodbcsql/lib64/
  • cat /etc/odbcinst.ini [ODBC Driver 17 for SQL Server] 描述=Microsoft ODBC Driver 17 for SQL Server Driver=/usr/local/lib/libmsodbcsql.17.dylib UsageCount=2 [ ODBC Driver 11 for SQL Server] Description=Microsoft ODBC Driver 11 for SQL Server Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-11.0.so.2270.0 Threading=1 UsageCount=1 我已经更新如下 cat /etc/odbc .ini 说明 = SQL Server 驱动程序的 ODBC 驱动程序 11 = /opt/microsoft/msodbcsql/lib64/libmsodbcsql-11.0.so.2270.0
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-08-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-28
  • 1970-01-01
  • 2015-08-02
相关资源
最近更新 更多