Python 如何使用Elasticbeanstalk在amazon RDS中删除表并重新创建?

Python 如何使用Elasticbeanstalk在amazon RDS中删除表并重新创建?,python,django,amazon-web-services,amazon-elastic-beanstalk,amazon-rds,Python,Django,Amazon Web Services,Amazon Elastic Beanstalk,Amazon Rds,我在Amazon上的数据库目前只有少量数据(我正在制作一个web应用程序,但它仍在开发中),我希望删除它,对模式进行更改,然后将其重新放回。在过去的几次我这样做,我已经完全重新创建了我的elasticbeanstalk应用程序,但似乎有更好的方法。在本地计算机上,我将执行以下步骤: “dropdb databasename”和“createdb databasename” python manage.py makemigrations python manage.py迁移 我是否可以在amazo

我在Amazon上的数据库目前只有少量数据(我正在制作一个web应用程序,但它仍在开发中),我希望删除它,对模式进行更改,然后将其重新放回。在过去的几次我这样做,我已经完全重新创建了我的elasticbeanstalk应用程序,但似乎有更好的方法。在本地计算机上,我将执行以下步骤:

  • “dropdb databasename”和“createdb databasename”
  • python manage.py makemigrations
  • python manage.py迁移

  • 我是否可以在amazon上执行类似的操作来删除我的数据库并将其重新联机,而不删除整个应用程序?不久前,当我尝试删除RDS实例并创建一个新实例时,elasticbeanstalk出现了问题。

    最简单的方法是通过SSH连接到一个EC2实例,该实例已访问RDS DB,然后从那里连接到DB。确保python脚本可以读取应用程序配置以访问配置的DB,或者为DB主机名添加参数。要删除并创建数据库,只需添加必要的参数即可连接到数据库。例如:

    $createdb-h-U-W ebdb


    您还可以在数据库为空时创建RDS快照,并使用RDS实例操作还原到时间点迁移最新快照

    完成此操作的最简单方法是通过SSH连接到一个已访问RDS DB的EC2实例,然后从那里连接到数据库。确保python脚本可以读取应用程序配置以访问配置的DB,或者为DB主机名添加参数。要删除并创建数据库,只需添加必要的参数即可连接到数据库。例如:

    $createdb-h-U-W ebdb


    您还可以在数据库为空时创建RDS快照,并使用RDS实例操作还原到时间点迁移最新快照

    感谢您的评论,它帮助我走上了正确的道路。我可以删除并创建数据库,但现在在运行manage.py时遇到问题。当我尝试在EC2实例中运行manage.py时,它找不到我的环境变量——关于为什么会出现这种情况有什么想法吗?我检查了/opt/python/current/env,可以看到变量,但是当我进入python shell并运行“os.environ”时,它们没有列出。环境变量将为您的应用程序加载,但在您将SSH加载到实例中时不会加载。请尝试运行
    source/opt/python/run/venv/bin/activate&&source/opt/python/current/env
    ,或者至少使用后者来加载环境变量。感谢您的评论quezacoatl不知道/opt/python/current/env。感谢您的评论,它帮助我走上了正确的道路。我可以删除并创建数据库,但现在在运行manage.py时遇到问题。当我尝试在EC2实例中运行manage.py时,它找不到我的环境变量——关于为什么会出现这种情况有什么想法吗?我检查了/opt/python/current/env,可以看到变量,但是当我进入python shell并运行“os.environ”时,它们没有列出。环境变量将为您的应用程序加载,但在您将SSH加载到实例中时不会加载。尝试运行
    source/opt/python/run/venv/bin/activate&&source/opt/python/current/env
    ,或者至少使用后者来加载环境变量。感谢您的评论,quezacoatl不知道/opt/python/current/env