我必须用python 2.7.11
更新一个使用django 1.8
、pyodbc 3.0.10
和django-pyodbc-azure 1.8.3.0
的旧django项目。对于新版本,我需要将django 3.1.3
、pyodbc 4.0.30
和django-mssql-backend 2.8.1
与python 3.9.0
一起使用,主要区别是使用django-mssql-backend 2.8.1
而不是django-pyodbc-azure 1.8.3.0
,我的settings.py
具有以下配置:
'default': {
'ENGINE': 'sql_server.pyodbc',
'NAME': 'dn_name',
'USER': 'user',
'PASSWORD': 'password',
'HOST': 'hostinstance',
'PORT': '1433',
'OPTIONS': {
'driver': 'SQL Server Native Client 11.0',
'unicode_results': True,
},
},
使用旧版本,连接正常工作,但当我更新项目时,会出现以下错误:
('08001','[08001][Microsoft][SQL Server Native Client 11.0]TCP提供程序:无法建立连接,因为目标计算机主动拒绝。(10061((SQLDriverConnect(;[08001][Microsoft][SQL Server Native Client 11.0]登录超时已过期(0(;[08001][Microsoft][SQL Server Native Client 11.0]无效连接字符串属性(0(;[08001][Microsoft][SQL Server本机客户端11.0]在建立与SQL Server的连接时,发生了与网络相关或特定于实例的错误。找不到服务器可到达的检查实例名称是否正确,以及SQL Server是否配置为允许远程连接。有关详细信息,请参阅SQL服务器联机丛书。(10061('(
据我所知,我有正确的配置。有人知道我错过了什么吗?
问题是我使用'PORT': ''
的'PORT': '1433'
参数,它解决了问题