我几天都在使用Django + mysql。今天早上,我突然发现我无法与远程mysql连接。
% python manage.py makemigrations它提高了
django.db.utils.OperationalError: (2026, 'SSL connection error: SSL_CTX_set_tmp_dh failed')
也是当
python manage.py runserver这是我的环境:
macOS 10.15 + Django 2.2.6 + MySQL 5.7 (在远程服务器上,ubuntu18.04)+python3.6.8(使用conda )
我一直在寻找一些解决方案,比如:
包openssl冲突: openssl=1.0.2r python=3.6.8 -> opensslversion=‘>=’>=‘.1.1a,<1.2a’
没有什么改变,
备注
F 222
我的一些代码
# setting.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'OPTIONS': {
'read_default_file': mysqlPath,
'init_command': 'SET default_storage_engine=INNODB',
},
}
}
# my_remote.cnf (which define the 'mysqlPath' in setting.py)
[client]
database = mydatabase
user = myusername
password = mypassword
default-character-set = utf8
host = myremotehost
port = 3306
use_pure = True
skip-ssl
skip_ssl
skip-ssl = True
skip_ssl = True发布于 2019-11-23 05:23:31
这是因为您的服务器尚未设置为SSL (目前为止)。因此,错误是由服务器端引起的.
正如前面提到并成功尝试的那样,解决方案是在开发过程中使服务器作好SSL准备,或者将skip_ssl设置为true。
https://dev.mysql.com/doc/refman/5.7/en/using-encrypted-connections.html
https://stackoverflow.com/questions/59004332
复制相似问题