You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何跨项目创建Cloud SQL只读副本以实现BigQuery联邦查询

跨项目创建Cloud SQL只读副本用于BigQuery联邦查询的解决方案

核心问题原因

你之前的命令失败是因为默认情况下,--master-instance-name只会在当前指定的--project范围内查找实例,跨项目时必须明确指定源实例的所属项目和区域,同时需要源项目授权目标项目的Cloud SQL服务账号。

操作步骤

  1. 源项目授权目标项目服务账号
    源项目的管理员需要为目标项目的Cloud SQL服务账号授予权限:

    • 目标项目的Cloud SQL服务账号格式为:service-<目标项目ID>@gcp-sa-cloudsql.iam.gserviceaccount.com
    • 给该账号添加源项目的Cloud SQL Replica Editor角色(或更宽泛的Cloud SQL Editor角色),确保它有权限创建源实例的副本。
  2. 使用正确的gcloud命令创建跨项目副本
    执行以下命令,明确指定源实例的项目、区域,以及目标项目和副本的区域:

    gcloud sql instances create <my-replica> \
      --master-instance-name <source-instance> \
      --master-instance-project <source-project> \
      --master-instance-region <source-instance-region> \
      --project <destination-project> \
      --region <destination-region>
    

    这个命令会告诉gcloud去<source-project>的<source-instance-region>区域查找源实例,然后在<destination-project>的<destination-region>创建只读副本。

  3. 配置BigQuery联邦查询
    副本创建完成并同步完成后,直接在你的项目中创建BigQuery到该副本的联邦连接即可,因为副本属于你的项目,权限验证不会再出现跨项目问题。

补充说明

  • 该方法仅适用于同一Google Cloud组织内的跨项目副本创建;如果是跨组织场景,确实只能使用外部副本(external replica)方案。
  • 确保源实例已开启二进制日志(默认Cloud SQL实例已开启,用于副本数据同步)。

内容的提问来源于stack exchange,提问作者LoicM

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 23:50:44