【问题标题】:Cloud SQL from App Engine (flexible environment) connection issue来自 App Engine(灵活环境)的 Cloud SQL 连接问题
【发布时间】:2017-08-16 09:03:04
【问题描述】:

我正在尝试从我的 App Engine 柔性环境 NodeJS 应用程序访问我的 Cloud SQL 实例,但一直遇到超时问题。

当我将运行 App 引擎的计算引擎的 IP 添加到 Cloud SQL 访问控制时,它可以工作。文档指出,如果两者都在同一个项目中,则应自动授予访问权限。

我错过了什么?

我正在为 knex 使用以下连接设置:

const config = {
    host: 'myIP',
    user: 'user',
    password: 'password',
    database: 'database',
    port: 3306
  };

套接字设置也不起作用。抛出“未处理的拒绝错误:连接 ENOENT /cloudsql”异常:

const config = {
    socketPath: '/cloudsql/project:zone:instance',
    user: 'user',
    password: 'password',
    database: 'database'
  };

【问题讨论】:

  • 请描述您用于连接的连接字符串。你关注cloud.google.com/appengine/docs/flexible/nodejs/using-cloud-sql了吗?
  • 我已经添加了我的连接设置。本教程使用的 socketPath 也不起作用。我唯一能够开始工作的就是使用 IP 并将其添加到云 sql 中的授权网络。
  • 您是否按照所有步骤操作?特别是你在 app.yaml 中设置了 cloud_sql_instances 吗?
  • 是的,你完全正确,我跳过了 app.yaml 中的 beta_settings 部分。现在按预期工作。如果您想将此添加为答案,我可以接受。

标签: google-app-engine google-cloud-sql


【解决方案1】:

此错误很可能表明代理进程未在 GAE 灵活实例上运行。

根据documentation,您必须在app.yaml 文件中设置cloud_sql_instances 才能自动启动代理。

【讨论】:

  • 这对我没有帮助。还有其他想法吗?
  • 你一步步浏览了链接的文档吗?
  • 是的 - 我发现我的 cli 有问题我猜...从云 shell 部署时它可以工作,但不能从本地部署。
  • 文档链接已损坏
猜你喜欢
  • 2019-09-20
  • 2017-11-16
  • 2015-07-18
  • 2017-12-05
  • 1970-01-01
  • 2018-11-02
  • 2020-11-23
  • 2018-12-25
  • 1970-01-01
相关资源
最近更新 更多