繁体   English   中英

从 Google AppEngine Standard 连接到 Google Cloud SQL 实例时出错(使用 NodeJS)

[英]Error connecting from Google AppEngine Standard to Google Cloud SQL instance (Using NodeJS)

我创建了一个连接到 Google Cloud SQL 的小型 NodeJS REST API。 使用 Google AppEngine 柔性环境它可以工作,但是当我尝试使用标准环境时,Google Cloud SQL 连接被拒绝。

我尝试使用内部 IP 以及 socketPath 进行连接。

我创建了一个存储库来展示错误: https : //github.com/cbullokles/appengine-error

根据文档,我希望在这两种情况下都连接到 MySQL,但它没有按预期工作。 它是一个未记录的限制吗? 或者也许我没有正确阅读 AppEngine 文档。

从 App Engine Standard 连接到 Cloud SQL 实例的方法是使用 Unix 域套接字连接到提供 App Engine 标准环境的 Cloud SQL 实例。

如果您使用 Node.js mysql包,请以这种方式配置它以在 App Engine 中运行:

const db = mysql.createConnection ({
    socketPath: '/cloudsql/<PROJECT_NAME>:<REGION_NAME>:<INSTANCE_NAME>',
    user: 'user',
    password: '1234',
    database: 'yourDatabase'
});

<PROJECT_ID>:<REGION>:<INSTANCE_ID>是每个 Cloud SQL 实例的唯一字符串。 它列在您的实例的实例详细信息页面上的实例连接名称下,或在使用gcloud sql instances describe <INSTANCE_ID>命令时在connectionName下列gcloud sql instances describe <INSTANCE_ID>

此外,Node.js 的 App Engine Standard 官方文档有一些使用knex库进行连接的代码示例

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM