postgresql - 从标准 App Engine 环境迁移到 flex App Engine 环境,现在 Cloud SQL 将无法连接
问题描述
我有一个用 Node.js 编写的 Google App Engine 应用程序,它连接到同一 GCP 项目下的 Cloud SQL Postgres 实例。以前我使用的是标准环境,它运行良好,但是当我切换到弹性环境时,SQL 连接不再工作。
我的app.yaml
:
runtime: nodejs
env: flex
manual_scaling:
instances: 1
beta_settings:
cloud_sql_instances: mopho-217900:us-central1:mopho
我通过 Knex 使用 hostname 连接到数据库/cloudsql/mopho-217900:us-central1:mopho
。这给了我以下错误:
Error: connect ENOENT /cloudsql/mopho-217900:us-central1:mopho/.s.PGSQL.5432
我提供的用户名/密码/数据库都是有效的,如果我切换回标准环境,它会继续工作。只有当我切换到柔性环境时它才会失败。
解决方案
事实证明,需要启用Cloud SQL Admin API 。(感谢此 Google 群组帖子的指针)
推荐阅读
- r - 如何在 R 中将 lib-paths 设置为具有单个目录,即“C:\Users\Username\Documents\...”
- ios - IOS 12.2 内嵌 iframe 内的按钮问题
- python - 如何使用应用函数重命名熊猫数据框中的列?
- php - AJAX POST 发送空格而不是 JSON 对象
- android-studio - 在 Intellij Idea 中从自动完成和自动导入中排除 kotlin.Result
- react-native-gifted-chat - 错误:命令失败:在主项目上运行 npm install 后 git rev-parse --git-dir
- html - iframe 不通过更改 subdmain 来启动 URL(不是 X-Frame-Options 问题)
- java - java.sql.SQLTransactionRollbackException: 当前语句的至少一个参数未初始化
- swift - 我在将我的 firebase 数据库中的子值放入 tableview 单元格中的标签框内时遇到问题
- django - 如何将模型“A”与模型“B”的属性相匹配?