python - Elastic Beanstalk 上的 Django + MySQL - 查询 MySQL 时出错

标签 python mysql django amazon-web-services amazon-elastic-beanstalk

当我在 Elastic Beanstalk 上托管的 Django 应用程序上查询 MySQL 时,我遇到了错误。错误说:

/admin/login 操作错误 (1045, "拒绝用户 'adminDB'@'172.30.23.5' 的访问(使用密码:YES)")

这是我的 .config 文件:

container_commands:
  01_migrate:
    command: "source /opt/python/run/venv/bin/activate && python manage.py migrate --noinput"
    leader_only: true

option_settings:
  "aws:elasticbeanstalk:application:environment":
    DJANGO_SETTINGS_MODULE: "mysite.settings"
    "PYTHONPATH": "/opt/python/current/app/mysite:$PYTHONPATH"
    "ALLOWED_HOSTS": ".elasticbeanstalk.com"
  "aws:elasticbeanstalk:container:python":
    WSGIPath: mysite/wsgi.py
    NumProcesses: 3
    NumThreads: 20
  "aws:elasticbeanstalk:container:python:staticfiles":
    "/static/": "www/static/"

这是我在 settings.py 上的数据库部分:

DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': os.environ['RDS_DB_NAME'],
            'USER': os.environ['RDS_USERNAME'],
            'PASSWORD': os.environ['RDS_PASSWORD'],
            'HOST': os.environ['RDS_HOSTNAME'],
            'PORT': os.environ['RDS_PORT'],
        }
    }

我通过 eb create 命令创建了 eb 环境,然后继续在他们网站上的 eb 控制台上创建一个 RDS 数据库。我还需要做些什么来将 Django 连接到 MySQL 吗?与安全组有关吗?

谢谢!

最佳答案

感谢@DrewPierce 的回复,但问题很简单,而且非常愚蠢。原来我的 RDS 密码中的美元符号导致了问题。将其更改为更简单的密码,我成功登录了。

希望这对遇到类似问题的其他人有所帮助!

关于python - Elastic Beanstalk 上的 Django + MySQL - 查询 MySQL 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31374992/

相关文章:

python - 发布日期、经理和关系

python - Django url 中的多个 pks

python - 如何找到脚本的目录?

python - QLabel 不会重新绘制像素图

mysql - 是否应该避免向更大的 MySQL 表中添加另一个字段?

python - 如何使用 docker-compose 运行 Python Django 和 Celery?

python - 在图表中扩展 matplotlib 线图

python - PyQt:表单布局内的 QLineEdit 小部件放置

php - 使用 json jquery 和 php 插入数据库

mysql - 无法修改表