【发布时间】:2020-01-27 11:41:01
【问题描述】:
我一直在尝试使用 pg 模块连接到我的 Cloud SQL 实例,但到目前为止还没有成功。
我在网上看了很多,但对这个主题不太了解。我还想在某个时候在 Cloud Run 上部署我的 Express 应用并让它连接到我的 Cloud SQL 实例,但我不知道该怎么做。
这里列出了一些我不明白的事情,想简要解释一下:
- 什么是 Unix 套接字连接,为什么要在普通连接上使用它们?
- 什么是 Cloud SQL 代理?我需要使用它吗?如果是,为什么?
- 我是否需要做任何额外的工作才能从 Cloud Run 连接到我的 Cloud SQL 实例?
以下是我尝试使用pg.Client 对象的所有连接对象和连接字符串:
- 第一个连接字符串:
postgresql+psycopg2://postgres:password@/cloudsql/myapp:us-central1:mydb?host=/var/lib/postgresql - 第二个连接字符串:
postgresql://postgres:password@hostip:5432/myapp:us-central1:mydb - 第三个连接字符串:
postgresql://postgres:password@hostip:5432/sarcdb - 连接对象:
{ host: "/cloudsql/myapp:us-central1:mydb", username: "postgres", password: "password", database: "mydb" }
所有这些都给我一个Connection terminated unexpectedly 错误。
【问题讨论】:
标签: postgresql database-connection google-cloud-sql google-cloud-run cloud-sql-proxy