Pyodbc登录超时错误(Azure) SQL Server



我得到一个奇怪的错误与Python公寓环境和PyODBC。我有多个Conda环境,我能够从一个环境(从Linux机器)连接到Azure上托管的SQL Server,但不能从另一个连接。这两个Python环境都有3.7.7版本的Python和4.0.0版本的Pyodbc。代码完全相同,连接字符串使用SQL Server 17驱动程序。

conn_str='DRIVER={ODBC Driver 17 for SQL Server};SERVER=' +server+';Authentication=ActiveDirectoryPassword;DATABASE='+database+';UID='+self.user_name+';PWD='+self.password

错误是:

pyodbc。OperationalError: ('HYT00', '[HYT00] [Microsoft][ODBC Driver 17 for SQL Server]Login timeout expired (0) (SQLDriverConnect)')

  • 从上面可以看出,问题可能与dns有关。在连接字符串,尝试使用IP地址而不是主机名,或者检查DNS设置

  • 尝试降级到ODBC驱动程序13并尝试一下。对于那个版本17需要卸载

  • 尝试使用SQL身份验证而不是Active Directory连接密码。

Microsoft Linux的SQL Server ODBC驱动程序无法确定实例名。

最新更新