Google cloud platform Google Cloud SQL导入-错误:HTTPError 403:客户端无权发出此请求
我正在尝试使用以下命令导入存储在云存储中的数据库:Google cloud platform Google Cloud SQL导入-错误:HTTPError 403:客户端无权发出此请求,google-cloud-platform,google-cloud-storage,google-cloud-sql,Google Cloud Platform,Google Cloud Storage,Google Cloud Sql,我正在尝试使用以下命令导入存储在云存储中的数据库: gcloud sql instances import instance-name gs://connect-to-the-cloud-sql.appspot.com/my-cloud-sql-instance-backup 但是,我得到了一个错误: ERROR: (gcloud.sql.instances.import) HTTPError 403: The client is not authorized to make this req
gcloud sql instances import instance-name gs://connect-to-the-cloud-sql.appspot.com/my-cloud-sql-instance-backup
但是,我得到了一个错误:
ERROR: (gcloud.sql.instances.import) HTTPError 403: The client is not authorized to make this request.
我已使用以下方式登录:
gcloud auth login
确保实例名称正确无误。我也有同样的错误,只要我更正了实例名,它就消失了 我遇到了这个问题,我的实例名是正确的。结果证明我参与了错误的GCP项目。确保切换到正确的[target]项目或使用project参数:
gcloud sql instances export my-cloud-sql-instance gs://connect-to-the-cloud-sql.appspot.com/my-cloud-sql-instance-backup --project=<your target project>
gcloud sql实例导出我的云sql实例gs://connect-to-the-cloud-sql.appspot.com/my-cloud-sql-instance-backup--project=
这听起来可能太明显了,但您的服务帐户可能确实缺少导入数据的访问权限。检查是否在IAM&Admin页面上安装了正确的cloudsql.instances.import
策略。在我的情况下,这是因为cloud sql实例服务帐户在我尝试从中导入的存储桶上没有正确的权限
:
gcloud sql instances describe [INSTANCE_NAME]
serviceAccountEmailAddress
字段gsutil iam
将legacyBucketWriter
和objectViewer
云iam角色授予bucket的服务帐户gcloud sql import sql [INSTANCE_NAME] gs://[BUCKET_NAME]/[IMPORT_FILE_NAME] \
--database=[DATABASE_NAME]
仔细检查项目名称。项目名称正确无误。我能够使用
gcloud sql instances导出我的云sql实例gs://connect to the cloud sql.appspot.com/my cloud sql instance backup
在我的例子中,我一直在使用--instance=project:zone:instance name
尝试命令gcloud sql users list
,并出现同样的错误,当我尝试使用--instance=instance name
时,它起到了作用。建议:检查@inostia列出的文档