geo*_*ges 11 google-app-engine google-cloud-sql google-cloud-platform
我正在尝试为第二代云sql实例本地设置连接.
呼叫代理是
./cloud_sql_proxy -dir=/cloudsql -instances=status-1268:us-central1:status-dev=tcp:3306 & mysql -u status_stg --host 127.0.0.1
Run Code Online (Sandbox Code Playgroud)
我有点不清楚如何从API部分正确设置服务帐户,所以我尝试了两个默认值,App引擎默认服务帐户和计算引擎默认服务帐户.我还创建了一个新的服务帐户.对于其中的每一个,我从管理权限部分将服务帐户ID分配为编辑者和所有者.也许还有另一种方法可以为这些帐户启用Cloud SQL Admin API?
当我的服务尝试与DB通信时从代理输出:
./cloud_sql_proxy -dir=/cloudsql -instances=status-1268:us-central1:status- dev=tcp:3306 & mysql -u status_stg --host 127.0.0.1
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (61)
2016/04/04 11:26:58 Open socket for "status-1268:us-central1:status-dev" at "127.0.0.1:3306"
2016/04/04 11:26:58 Socket prefix: /cloudsql
2016/04/04 11:27:10 Got a connection for "status-1268:us-central1:status-dev"
2016/04/04 11:27:11 couldn't connect to "status-1268:us-central1:status-dev": googleapi: Error 403: The client is not authorized to make this request., notAuthorized
2016/04/04 11:29:08 Got a connection for "status-1268:us-central1:status-dev"
2016/04/04 11:29:08 couldn't connect to "status-1268:us-central1:status-dev": googleapi: Error 403: The client is not authorized to make this request., notAuthorized
Run Code Online (Sandbox Code Playgroud)
关于寻找什么的想法?我想我在这里缺少一些基本配置服务帐户的东西.
(总的来说,对于我的项目,我正在运行一个node.js express app并希望将它连接到第二个gend cloud sql数据库实例,而不必用0.0.0.0公开它,因为我目前正在工作)
谢谢
TL; DR:如果您的错误日志包含Error during createEphemeral..,请继续阅读。
适用于我的解决方案来自Github Cloud-SQL-Proxy Issue Tracker。
似乎您可能在后端遇到了一个错误,该错误是在有相同名称的旧服务帐户时触发的。请按照以下步骤解决您的问题:
- 转到Cloud Project IAM页面(左侧菜单> IAM&Admin> IAM)
- 查找出现问题的机器人帐户所在的行。
- 在角色列上应显示“ Cloud SQL Client”。
- 单击它以打开下拉菜单
- 单击选中的“ Cloud SQL Client”角色以取消选中它。
- 点击上方的蓝色保存按钮。
- 验证该服务帐户已从IAM页面中删除。
- 单击同一页面上方的添加按钮。
- 输入服务帐户电子邮件地址,然后选择Cloud SQL Client角色
- 点击添加
- 服务帐户应再次出现在列表中。
学分奶酪,但点是我:P。希望它能解决您的问题。
| 归档时间: |
|
| 查看次数: |
6440 次 |
| 最近记录: |