【发布时间】:2020-02-19 07:12:45
【问题描述】:
我在 google app-engine 平台上有一个项目。当我更改一些代码时,我会在这个平台上上传新项目并删除旧项目。但是PostgreSQL数据库中有很多用户及其信息、文件等。当我的新项目开始时,我的数据库创建,所以所有值都丢失了。有时我的表格列必须更改。例如:在第一个项目中,我没有强制发送验证电子邮件,所以我不保存用户的电子邮件地址。之后我决定发送用户电子邮件。添加我的数据库用户表新列(电子邮件列)更新项目后,(上传更新版本并再次创建数据库)如何保护旧数据库值?
【问题讨论】:
-
嗨,你有什么理由需要删除整个项目吗? Cloud SQL 实例与项目本身相关联,因此您将丢失所有信息。为什么在 GAE 应用程序上的代码更改后不直接运行
gcloud app deploy,而不是删除整个项目? -
实际上我可以在 VI 屏幕上更改我的代码,但有时我的代码更改一百或更多行,有时我的数据库表可以更改。我之前解释过(新版本添加了电子邮件栏)。你能解释一下 GAE 是什么意思吗?你能解释一下在数据库上添加一些代码和添加一些列而不删除项目和添加和启动新项目的方法吗?我搜索但一无所获。 (我找到了灯具表,但我不确定它是否正确)非常感谢:)。 @丹尼尔奥坎多
-
GAE 代表 Google App Engine。在 Google Cloud Platform (GCP) 中,project resource 与 GAE 应用程序不同。据我了解,您当前的工作流程包含一个 GCP 项目,该项目有一个 GAE application using Java as runtime,它使用 PostgreSQL 数据库来存储一些用户的信息。如果我正确理解您的工作流程,请告诉我。您使用的是 Cloud SQL 实例吗? GAE 标准还是弹性?
-
我在 GAE 平台上使用 PostgreSQL。我上传我的项目(创建模式),然后运行我的项目。所有数据库值都消失了。如果我在更新模式下上传我的项目。我无法更改我的数据库列。(我无法添加新列)并且需要很长时间。我只尝试一两个用户的信息。更新模式需要两个小时。也许 2 个月后,我的用户数将是 100。也许我必须添加新列 :( 我能做什么 :( 我搜索 flyway 但我了解 flyway 仅在保护-更新-插入数据库模式上工作。不是数据库值.. 是对吗?如何保护我的数据库值(用户信息等)
标签: java postgresql google-app-engine create-table