Django MySQL连接中出现SSL错误(2026 SSL\u CTX\u set\u tmp\u dh失败)
试图通过settings.py文件中的databases dict连接到RDS MySQL实例会产生django.db.utils.OperationalError:(2026,“SSL连接错误:SSL\u CTX\u set\u tmp\u dh失败”) 错误代码类似于,因此我尝试使用bin/mysql\u ssl\u rsa\u设置来创建默认的ssl和rsa文件 设置(类似于)Django MySQL连接中出现SSL错误(2026 SSL\u CTX\u set\u tmp\u dh失败),mysql,django,rds,Mysql,Django,Rds,试图通过settings.py文件中的databases dict连接到RDS MySQL实例会产生django.db.utils.OperationalError:(2026,“SSL连接错误:SSL\u CTX\u set\u tmp\u dh失败”) 错误代码类似于,因此我尝试使用bin/mysql\u ssl\u rsa\u设置来创建默认的ssl和rsa文件 设置(类似于) 标准Django应用程序 MySQL RDS实例,安全组允许所有IP地址的连接 MySQL用户设置为允许从任何主
- 标准Django应用程序
- MySQL RDS实例,安全组允许所有IP地址的连接
- MySQL用户设置为允许从任何主机进行连接
- 亚马逊的pem已经下载并在Django设置中指定
db = pymysql.connect(user=os.environ['DEV_DATABASE_USERNAME'],
password=os.environ['DEV_MYSQL_PASSWORD'],
host=os.environ['DEV_DATABASE_HOST'],
cursorclass=pymysql.cursors.DictCursor,
database='dev'),
ssl={'ssl':{'ca':<PATH TO CA CERT>}})
db=pymysql.connect(user=os.environ['DEV\u DATABASE\u USERNAME'],
password=os.environ['DEV_MYSQL_password'],
host=os.environ['DEV_DATABASE_host'],
cursorclass=pymysql.cursors.DictCursor,
数据库='dev'),
ssl={'ssl':{'ca':}})
我已尝试验证ca的路径是否为绝对路径,确实如此,并确保我没有使用python尝试构建它,如中所示
数据库={
“默认值”:{
'ENGINE':'django.db.backends.mysql',
'NAME':'dev',
“用户”:os.environ['DEV_DATABASE_USERNAME'],
'HOST':os.environ['DEV_DATABASE_HOST'],
“密码”:os.environ['DEV_MYSQL_PASSWORD'],
“选项”:{
'ssl':{'ca':},
}
}
}我通过使用完全相同的settings.py文件创建一个全新的Django项目并更新requirements.txt中的所有包来解决这个问题,因此问题可能是mysqlclient、PyMySQL和MySQL 5.6之间的不兼容 可能重复的错误代码与中相同,但我在那篇文章中尝试了解决方案,但没有成功。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'dev',
'USER': os.environ['DEV_DATABASE_USERNAME'],
'HOST': os.environ['DEV_DATABASE_HOST'],
'PASSWORD': os.environ['DEV_MYSQL_PASSWORD'],
'OPTIONS': {
'ssl': { 'ca': <PATH TO CA CERT> },
}
}