相关疑难解决方法(0)

Pyodbc:登录超时错误

我正在尝试pyodbc从运行Ubuntu 16.04的远程计算机连接到MS SQL Server 。

import pyodbc 

conn = pyodbc.connect(r'DRIVER=ODBC Driver 17 for SQL Server; SERVER=xxxTest-SRV; PORT=51333; DATABASE=TestDB; UID=xxxx; PWD=xxxx;')
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

pyodbc.OperationalError:('HYT00','[HYT00] [unixODBC] [Microsoft] [SQL Server的ODBC驱动程序17]登录超时已过期(0)(SQLDriverConnect)')

我尝试IP在连接字符串中使用服务器,但还是没有运气。

但是,我可以sqlcmd从终端连接到使用
以下作品:

sqlcmd -S xxxTest-SRV, 51333 -d TestDB -U xxxx -P xxxx
Run Code Online (Sandbox Code Playgroud)

我没有找到任何可以解决我问题的问题。

odbcinst.ini

[ODBC Driver 17 for SQL Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-17.1.so.1.1
UsageCount=1
Run Code Online (Sandbox Code Playgroud)

pyodbc从Linux机器使用MS SQL Server连接似乎总是存在问题。有没有一种方法可以从Python连接到SQL Server。感谢您在解决此错误方面的帮助。谢谢。

[更新]

按照下面的答案,我更新了连接字符串。但是,现在我得到以下错误:

pyodbc.Error:('01000',“ [01000] [unixODBC] [驱动程序管理器]无法打开lib'/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.0.so.1.1':找不到文件(0) (SQLDriverConnect)“)

我的odbcinst.ini文件驱动程序定义:

[ODBC Driver 17 …
Run Code Online (Sandbox Code Playgroud)

sql-server pyodbc python-3.x ubuntu-16.04

7
推荐指数
3
解决办法
1万
查看次数

标签 统计

pyodbc ×1

python-3.x ×1

sql-server ×1

ubuntu-16.04 ×1