我正在尝试使用连接到 MS SQL Serverpyodbc
从运行 Ubuntu 16.04 的远程计算机。
import pyodbc
conn = pyodbc.connect(r'DRIVER=ODBC Driver 17 for SQL Server; SERVER=xxxTest-SRV; PORT=51333; DATABASE=TestDB; UID=xxxx; PWD=xxxx;')
我收到以下错误:
pyodbc.OperationalError: ('HYT00', '[HYT00] [unixODBC][Microsoft][ODBC
SQL Server 驱动程序 17]登录超时已过期 (0)
(SQLDriverConnect)')
我尝试使用服务器IP
在连接字符串中,但仍然没有运气。
但是,我可以使用sqlcmd
从航站楼
以下作品:
sqlcmd -S xxxTest-SRV, 51333 -d TestDB -U xxxx -P xxxx
我没有找到任何可以回答我的问题的问题。
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
使用连接到 MS SQL Server 似乎总是存在问题pyodbc
从 Linux 机器。有没有办法从 Python 连接到 SQL Server。我将感谢您帮助解决此错误。谢谢。
[UPDATE]
根据下面的答案,我更新了连接字符串。但是,现在我收到以下错误:
pyodbc.Error: ('01000', "[01000] [unixODBC][驱动程序管理器]无法打开
lib '/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.0.so.1.1':文件
未找到 (0) (SQLDriverConnect)")
My odbcinst.ini文件驱动定义:
[ODBC Driver 17 for SQL Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.0.so.1.1
UsageCount=1
从 Linux 计算机连接到 MS SQL Server 一直是一场噩梦。你能告诉我是哪一个吗pyodbc
, unixODBC
and Driver
版本最稳定?
我已经安装了以下驱动程序this https://learn.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017微软说明。我的pyodbc
版本是4.0.23