我有一个 ubunut Compute Engine 实例和一个 postgres Cloud SQL 实例,它们都是同一个项目的一部分,并且都在同一个区域中。我想从 Compute Engine 连接到 Cloud SQL,但遇到了一些问题
我的 postgres 有默认的用户设置并添加了一个新的数据库。我为我的计算引擎保留了一个静态 IP,并将此 IP 添加到 postgres 的授权列表中。我尝试过(从云外壳)使用 psycopg2 连接 python 脚本,并使用 psql 直接从 bash 连接。我在这两种情况下收到的错误消息:
Connection timed out
Is the server running on host "xx.xxx.xxx.xx" and accepting
TCP/IP connections on port 5432?
地址省略,但它是正确的。我无法确定的是 postgres 是否正在监听端口,因为仪表板中没有(?)配置选项 - 尽管我假设它在 5432(默认)上运行
是否有任何我遗漏的特定于 postgres 或 Google Cloud Infrastructure 的内容?
最佳答案
连接到 CloudSQL 实例的最具弹性和便携性的方式是通过 CloudSQL Proxy .
有几个使用代理的选项,但在文档中有来自 GCE instance 的具体使用说明。 .我鼓励您选中该选项,因为它允许您将基础架构移动到任何地方而无需更改代码,您只需在部署应用程序的任何地方正确配置代理即可。
关于postgresql - 将 Google Compute Engine 连接到 Cloud SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49148744/