gpt4 book ai didi

firebase - 项目之间的 Firestore 和存储桶导出/导入

转载 作者:行者123 更新时间:2023-12-02 17:18:40 25 4
gpt4 key购买 nike

因此,在 Google Cloud CLI 的当前 Beta 功能中,有一个用于导入和导出 Firestore 数据的选项。 https://firebase.google.com/docs/firestore/manage-data/export-import

现在我将其导出到存储桶中,一切正常,然后再次导入,效果也很好。现在我有 2 个不同的项目,想将备份导入到另一个项目中,这可能吗?如果我也只需要一个项目的计费帐户,那就太好了。

文档中的这一行表示它是可能的

Once you have export files in Cloud Storage, you can import documents in those files back into your project or to another project.

但是文档没有介绍它到底是如何完成的?

最佳答案

可以在项目之间导入/导出。以下是对我有用的步骤:

首先,确保已安装 gcloud 命令行工具。设置说明,有关导出/导入过程的完整信息可以在 Firebase 文档中阅读关于页面Firestore Export and Import .

在继续之前,将 gcloud 项目设置为您想要从中获取数据的项目:

gcloud 配置集项目 [PROJECT_ID]

然后,使用 Google Cloud Console Web 应用程序,确保已在上创建 Cloud Storage 存储桶将成为数据的项目。

例如,对于源存储桶,您可以创建如下存储桶:

gs://my-source-project-export

您可以为存储桶命名任何您想要的名称,只要您选择独特的名称即可。

然后可以使用命令完成源数据的导出。例如,如果您想导出只是将 camerasradios 集合添加到您的 my-source-project-export 存储桶中,并带有为了标识导出的日期目录,您可以包含可选的 collection-ids 标志,如下所示:

gcloud beta firestore export gs://my-source-project-export/export-20190113_2109 --collection-ids='cameras','radios'

省略该标志将复制所有集合。

gcloud CLI 工具应该可以毫无问题地完成导出。

现在,为了完成导入,我们首先将 gcloud 项目切换到数据的目标:

gcloud 配置集项目 [PROJECT_ID]

然后,我们可以尝试导入:

gcloud beta firestore import --collection-ids='cameras','radios' gs://my-source-project-export/export-20190113_2109

由于权限问题,操作可能会失败。如果是这样,它将报告哪个服务帐户需要有访问存储桶。要解决权限问题,您可以简单地使用 Google Cloud Console Storage Browser管理存储桶的权限。所需的服务帐户必须添加到成员列表中角色存储管理员

纠正权限后,可以重新尝试该操作。对于长时间运行的操作,需要一个列表可以使用以下命令检索操作及其状态:

gcloud beta firestore 操作列表

导入完成后,明智的做法是撤销授予服务帐户的权限(如果有),以避免任何不必要的安全问题。

希望有帮助。

关于firebase - 项目之间的 Firestore 和存储桶导出/导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54173698/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com