在我的计算机上,我有两个使用 VMWARE Workstation 运行的虚拟机。
一台运行我的 python (v. 3.8.10) 代码的 Ubuntu 2.10 机器,以及我的 Microsoft SQL Server 所在的一台 Windows 10 机器。
我想在我的 Ubuntu 机器上使用 Python 代码从 SQL Server 查询数据。
这是我的代码:
import pyodbc
server = 'xxx.xxx.xxx.xxx' <- IP address of the Windows VM
database = 'TestDB'
username = 'TestUser'
password = 'test123'
cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER='+server+';DATABASE='+database+';UID='+username+';PWD='+ password)
cursor = cnxn.cursor()
我得到这个错误的回应:
pyodbc.OperationalError: ('HYT00', '[HYT00] [Microsoft][ODBC Driver 17 for SQL Server]登录超时已过期 (0) (SQLDriverConnect)')
我已经尝试使用这些凭据登录 Microsoft SQL Server Management Studio,它工作得很好。
谢谢你的帮助。
- - - - -编辑 - - - - -
在 SMS 中运行查询xp_readerrorlog 0, 1, N'Server is listening on'
后,我得到以下结果:
日志日期 | 过程信息 | 文本 |
---|---|---|
2021-09-09 13:24:44.380 | spid33s | 服务器正在监听 ['any' 49677]。 |
2021-09-09 13:24:44.390 | spid33s | 服务器正在监听 ['any' 49677]。 |