我有一个使用 SQLAlchemy (Flask-SQLAlchemy) 和 Alembic (Flask-Migrate) 的 Flask 应用程序。该应用程序在 Google App Engine 上运行。我想使用 Google Cloud SQL。
在我的机器上,我运行 python manage.py db upgrade
以针对我的本地数据库运行迁移。由于 GAE 不允许运行任意 shell 命令,我该如何在其上运行迁移?
最佳答案
- 将您本地计算机的 IP 列入白名单:https://console.cloud.google.com/sql/instances/INSTANCENAME/access-control/authorization?project=PROJECTNAME
- 创建用户:https://console.cloud.google.com/sql/instances/INSTANCENAME/access-control/users?project=PROJECTNAME
- 为实例分配外部 IP 地址:https://console.cloud.google.com/sql/instances/INSTANCENAME/access-control/ip?project=PROJECTNAME
- 使用以下 SQLAlchemy 连接 URI:
SQLALCHEMY_DATABASE_URI = 'mysql://user:pw@ip:3306/DBNAME'
- 请记住稍后释放 IP,因为您将按未使用的每小时收费
关于python - 在 Google App Engine 上运行 Alembic 迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35391120/