我正在尝试将Django连接到AWS Aurora服务器(RDS Aurora 5.6.10a),但我正在
django.db.utils.OperationalError: (1045, "Access denied for user 'admin'@'xx.xx.xx.xx' (using password: YES)
在Django settings.py中,我使用了以下设置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': MYSQL_DATABASE,
'USER': MYSQL_USER,
'PASSWORD': MYSQL_PASSWORD,
'HOST': MYSQL_SERVER,
'PORT': '3306',
'OPTIONS': {
'ssl': {
'ca': '/Users/mac-user/workspace/project/settings/rds-combined-ca-bundle.pem',
}
}
}
}
我也看过像this这样的类似问题,但没有效果
我还尝试使用mysql-connector-python
和mysql.connector.django
作为数据库引擎进行连接,并确保我正在设置正确的配置(设置OPTIONS
的{{1}}和ssl_ca
)但我也有类似的错误:
ssl_verify_cert
我尝试使用PHP和命令行连接到数据库,它工作正常:
mysql.connector.errors.ProgrammingError: 1045 (28000): Access denied for user 'admin'@'xx.xx.xx.xx' (using password: YES)
我是否遗漏了Django的任何配置?
答案 0 :(得分:0)
我没有直接回答你的问题,但显然当MySQL客户端没有启用ssl时(如MySQL命令行和你的PHP解决方案),Aurora没有做出有意义的响应(或正确?)。 p>
所以我的建议是以某种方式强制Django使用的MySQL客户端使用SSL连接,显然它默认没有启用/强制(你使用的选项可能不够用)。