我尝试使用OBDC连接到SQL Server。它在本地工作完美,Docker在Docker桌面上本地运行。但是,当我尝试从Azure中容器的Web应用程序连接时,它抛出了一个错误。
错误:root:错误消息:“[SQL Server的ODBC驱动程序17]登录超时已过期(0)(SQLDriverConnect)”)错误:root:错误类型:操作错误
connect_string = f"DRIVER={DATABASE_DRIVER};"
connect_string += f"SERVER={DATABASE_PROTOCOL}:{DATABASE_SERVER},"
connect_string += f"{DATABASE_PORT};"
connect_string += f"DATABASE={DATABASE_NAME};"
connect_string += f"UID={DATABASE_USER};"
connect_string += f"PWD={DATABASE_PASSWORD}"
try:
conn = pyodbc.connect(connect_string)
我试过:
- 已确保可以访问SQL Server。
- 已验证登录凭据是否正确
- 防火墙未阻止该IP地址可用的连接
- 已增加登录超时值
我也尝试过堆栈溢出中的其他答案,但我仍然无法连接到服务器。
1条答案
按热度按时间ewm0tg9j1#
我尝试了以下步骤:-
输出:-
当我在连接字符串中拼错SQL Server名称时,我得到了与您相同的错误代码,此外,如果您不允许在SQL Server网络中使用Web应用程序的IP地址,连接将超时。请参阅以下内容:-
确保在SQL Server网络选项卡中添加Azure Web应用或Containers应用IP地址,如下所示:-
您可以找到您的Web应用程序和容器应用程序的IP地址如下:-