簡體   English   中英

Pyodbc 登錄超時錯誤 (Azure) SQL 服務器

[英]Pyodbc login time out error with (Azure) SQL Server

我在 Python 公寓環境和 PyODBC 中遇到一個奇怪的錯誤。 我有多個 Conda 環境,我能夠從其中一個環境(從 Linux 機器)連接到 SQL 服務器托管在 Azure 上,但不能從另一個環境連接。 Python 環境都有 Python 的 3.7.7 版本和 Pyodbc 的 4.0.0 版本。 代碼完全相同,連接字符串使用 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][SQL 服務器的 ODBC 驅動程序 17] 登錄超時已過期 (0) (SQLDriverConnect)')

  • 如您所見,問題可能與 DNS 相關。 在連接字符串中,嘗試使用 IP 地址代替主機名,或檢查您的 DNS 設置。

  • 嘗試降級到 ODBC 驅動程序 13 並試一試。 對於該版本,需要卸載 17。

  • 嘗試使用來自 SQL 身份驗證的連接,而不是 Active Directory 密碼。

Microsoft 的 SQL 服務器 ODBC 驅動程序 Linux 無法確定實例名稱。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM