在谷歌CloudSQL中备份PostgresSQL单个数据库(非实例)的最佳方法是什么



我在谷歌云SQL中有多个数据库的PostgresSQL实例,想将单个数据库备份到谷歌云存储中。实现这一目标的最佳方法是什么?

您可以将转储文件从包含数据库的实例导出到 Cloud Storage 存储桶:

使用云 SQL 导出数据

  1. 创建存储桶:

    gsutil mb -p [PROJECT_NAME] -l [LOCATION_NAME] gs://[BUCKET_NAME]
    
  2. 描述要从中导出的实例:

    gcloud sql instances describe [INSTANCE_NAME]
    
  3. 复制服务帐户电子邮件地址字段

  4. 将服务账户作为写入器添加到存储桶 ACL

    gsutil acl ch -u [SERVICE_ACCOUNT_ADDRESS]:W gs://[BUCKET_NAME]
    
  5. 导出数据库:

    gcloud sql export sql [INSTANCE_NAME] gs://[BUCKET_NAME]/sqldumpfile.gz 
    --database=[DATABASE_NAME]
    
  6. 如果不需要保留之前设置的 ACL 提供的权限,请删除 ACL:

    gsutil acl ch -d [SERVICE_ACCOUNT_ADDRESS] gs://[BUCKET_NAME]
    

我最终创建了一个可以将SQL数据导出到云存储中的云函数。此功能可以通过云发布/订阅使用云调度程序触发

相关内容

  • 没有找到相关文章

最新更新