我已经按照《MySQL导出指南》成功导出了MySQL数据库。
现在,我正在尝试按照《MySQL导入指南》导入MySQL数据库。
我已经检查了service_account_email
我正在使用的权限,并且同时允许了Admin SQL和Admin Storage权限。
我可以使用以下命令在本地成功激活我的服务帐户:
gcloud auth activate-service-account <service_account_email> --key-file=<service_account_json_file>
运行命令后:
gcloud sql import sql <instance> <gstorage_file> --database=<db_name> --async
我得到此信息:
{
"error": {
"errors": Array[1][
{
"domain": "global",
"reason": "required",
"message": "Login Required",
"locationType": "header",
"location": "Authorization"
}
],
"code": 401,
"message": "Login Required"
}
}
我尝试过的其他事情
我还尝试使用service_account_email
SQL实例的,该实例来自:
gcloud sql instances describe <instance_name>
但是,它似乎有相同的错误。
题
根据给出的REST API JSON错误,如何使用进行“登录”,service_account_email
这样我就不会得到401 Error
?
问题是有关数据库实例服务帐户在创建的存储桶上写入的权限。解决此问题的步骤
1)转到您的Cloud SQL实例并复制实例的服务帐户(Cloud SQL-> {instance name}-> OVERVIEW-> Service帐户)
2)复制服务帐户后,转到要转储的Cloud Storage Bucket并对该帐户设置所需的权限(存储-> {bucket name}-> permissions-> add成员)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句