谷歌云应用引擎到 postgresql 连接被拒绝

Posted

技术标签:

【中文标题】谷歌云应用引擎到 postgresql 连接被拒绝【英文标题】:google cloud app engine to postgresql connection refused 【发布时间】:2017-10-12 20:57:14 【问题描述】:

我正在尝试将 Spring Boot 应用程序部署到谷歌云应用引擎。我使用以下命令进行部署

mvn appengine:deploy

似乎部署成功,但是当我观察到日志时数据库连接被拒绝。在日志中显示以下错误

原因:java.net.ConnectException:连接超时(连接 超时)在 java.net.PlainSocketImpl.socketConnect(本机方法) ~[na:1.8.0_121] 在 java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) ~[na:1.8.0_121] 在 java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) ~[na:1.8.0_121] 在 java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) ~[na:1.8.0_121] 在 java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[na:1.8.0_121] 在 java.net.Socket.connect(Socket.java:589) ~[na:1.8.0_121] 在 java.net.Socket.connect(Socket.java:538) ~[na:1.8.0_121] 在 java.net.Socket.(Socket.java:434) ~[na:1.8.0_121] 在 java.net.Socket.(Socket.java:211) ~[na:1.8.0_121] 在 org.postgresql.core.PGStream.(PGStream.java:62) ~[postgresql-9.1-901.jdbc4.jar!/:na] 在 org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:76) ~[postgresql-9.1-901.jdbc4.jar!/:na]

有人可以帮助解决这个问题吗?

【问题讨论】:

Connection timed out 如日志所示,未被拒绝。很可能是防火墙阻止了您的数据包。确保您已允许来自您的 IP 的连接。 @MattClark 感谢您抽出宝贵时间。我在谷歌云上使用谷歌云应用引擎和 postgres db。我什至将我的实例的 IP 地址添加到授权的 db 网络中。但这并没有帮助 【参考方案1】:

我刚刚遇到了这个问题。

在标准环境中使用 Google App Engine,在 the docs 之后,我不断收到 Connection Refused。

事实证明 App Engine 在后台使用 Cloud SQL 代理,这意味着您的 Cloud SQL 实例必须有一个公共 IP 地址

只要我在我的实例上激活它,它就起作用了。

【讨论】:

以上是关于谷歌云应用引擎到 postgresql 连接被拒绝的主要内容,如果未能解决你的问题,请参考以下文章

如何连接到谷歌计算引擎上的远程 PostgreSQL 服务器?

写入谷歌云 postgresql 数据库的连接网络错误

谷歌云sql实例超级权限错误

如何从应用引擎将写入附加到谷歌云存储文件?

谷歌云数据存储与谷歌应用引擎

如何使用谷歌应用引擎将 php 项目部署到谷歌云中?