正在尝试在Azure上部署基于Django的Web应用程序。
我使用Github方法部署了应用程序,并且部署正确。现在,我在那创建了一个Mysql Azure Database for MySQL
。它已经启动并运行,我什至添加了IP地址以使其能够连接它。我也可以通过MySQL工作台将其连接。
但是问题是,当尝试将应用程序连接到数据库时,它给了我django.db.utils.OperationalError: (2026, 'SSL connection error: SSL_CTX_set_tmp_dh failed')
错误。我也尝试通过门户网站在disabling
上通过MySQL在SSL上进行SSL连接,但这没有任何区别。
我也尝试添加官方doc。将我的数据库连接参数更改为
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '<name>',
'USER': '<user>',
'PASSWORD': '<pass>',
'HOST': '<host>',
'PORT': '3306',
'OPTIONS': {
'ssl': {
'ssl-ca': '/path/on/local/machine/BaltimoreCyberTrustRoot.crt.pem'} #I change the path when deploying on server
}
}
}
但是它无法连接。
我偶然发现this回答2-3次,但这还要求我将ssh转换为实例,然后运行命令,而当它处于天蓝色时,我只是做不到。
答案 0 :(得分:0)
万一有人偶然发现,您应该查看版本不匹配。
在我的情况下,下面是我通过点击和试用得出的工作版本。
mysql-connector-python==8.0.13
mysqlclient==1.3.14
pyOpenSSL==19.0.0