我们有一个大约一年前创建的appengine应用程序。那时,appengine控制台管理页面中没有“云集成”选项。因此,为了能够与Google API交谈并连接到Google Cloud SQL,我们在Google API控制台的旧界面中创建了一个API项目(这是https://code.google.com/apis/console处的那个)。为了让我们的客户能够查看SQL数据库的内容,我们创建了一个Google Apps脚本,用于读取数据库表并将其放入Google电子表格中。但是,我们的客户拥有与我们不同的域的Google Apps帐户,因此不允许运行应用脚本。为此,他需要成为管理SQL数据库的云项目的成员。在我们最近的一个appengine项目中,我们只需将客户添加到新API控制台中的项目成员列表(https://cloud.google.com/console处的那个)。这是有效的,因为当我们创建appengine ID时,我们还使用了“Cloud Integration”选项。
对于较旧的appengine应用程序,但这不起作用,因为云项目和appengine应用程序之间没有直接链接。我们只能添加属于同一域的项目成员(包括API控制台的旧界面和新界面)。
所以我们要做的是使用appengine控制台中的“Cloud Integation”选项创建一个新的云项目,从而将appengine应用程序直接链接到云项目。这应该允许我们将客户添加到API项目成员列表中,就像我们创建的最近的appengine应用程序一样。当然,有了这个新的云项目,我们需要将SQL数据库从旧的API项目迁移到新的项目。
我的问题是,这样做的最佳方法是什么?
亲切的问候,
拉尔夫
答案 0 :(得分:0)
首先,应直接从云控制台(https://cloud.google.com/console>创建项目)创建所有新的云项目。这将包括AppEngine应用程序和所有Google Cloud服务的通用用户界面,我相信这应该等同于您提到的“云集成”选项,但我从未使用它,所以我不确定。
要将数据从一个SQL数据库迁移到另一个SQL数据库,您应该使用导入/导出操作。您可以使用它将数据放在云存储桶中。
创建存储桶:
将数据导出到存储桶:
Export
按钮。gs://<bucket-name>/sql_data.gz
OK
并等待操作完成。您应该单击“操作”选项卡以检查“导出”操作是否已成功完成。
现在您可以将该存储桶中的数据导入新Cloud Project的数据库实例,只需转到该数据库实例,单击Import
按钮并输入您用于导出的相同路径。