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

问题描述 投票:0回答:2

使用SQL Server Management Studio(SSMS)Express,我可以找到数据库并连接没有问题。

但是当我使用pyodbc连接到同一台服务器时:

    import pyodbc
    Server = r"xxxER\xxxSQLSERV"
    db = "xxxDB"
    user = "xxx"
    password = "xxxx"
    conn = pyodbc.connect('DRIVER={SQL Server};SERVER='+server + ';DATABASE=' + db +';UID=' + user + ';PWD=' + password)

通过在我的本地使用Python我能够连接,但当我在linux服务器尝试得到以下错误

pyodbc.OperationalError: ('HYT00', u'[HYT00] [unixODBC][Microsoft][ODBC Driver 13 for SQL Server]Login timeout expired (0) (SQLDriverConnect)')

我尝试使用ODBC驱动程序17的SQL Server,但面临同样的问题。任何人请建议我这个。

python sql-server linux pyodbc
2个回答
0
投票

用于Linux的Microsoft SQL Server ODBC驱动程序无法解析实例名称。您可以使用免费的qazxsw poi模块获取相应的端口号并使用它来连接。


0
投票

尝试从服务器中删除实例并将其设置为

sqlserverport

或者如果你有一个端口号附加它

Server = "xxxER"

© www.soinside.com 2019 - 2024. All rights reserved.