heroku - 谷歌云 SQL + Heroku

标签 heroku google-cloud-sql

这是我收到的错误消息!

2014-03-13T08:30:21.010764+00:00 heroku[web.1]: Starting process with command `node dbserver.js`
2014-03-13T08:30:22.485293+00:00 app[web.1]: listening on 14218
2014-03-13T08:30:22.486771+00:00 app[web.1]: lo 127.0.0.1
2014-03-13T08:30:22.551389+00:00 app[web.1]: 
2014-03-13T08:30:22.554354+00:00 app[web.1]:     at Protocol.end (/app/node_modules/mysql/lib/protocol/Protocol.js:78:13)
2014-03-13T08:30:22.554354+00:00 app[web.1]:     at Socket.<anonymous> (/app/node_modules/mysql/lib/Connection.js:78:28)
2014-03-13T08:30:22.554354+00:00 app[web.1]: Error: Connection lost: The server closed the connection.
2014-03-13T08:30:22.554354+00:00 app[web.1]:     at Socket.EventEmitter.emit (events.js:117:20)
2014-03-13T08:30:22.554354+00:00 app[web.1]:     at _stream_readable.js:920:16
2014-03-13T08:30:22.554354+00:00 app[web.1]:     at process._tickCallback (node.js:415:13)
2014-03-13T08:30:24.327286+00:00 heroku[web.1]: Process exited with status 8

当我在本地测试时(有工头或没有工头),它有效!
我已在 Google Cloud SQL 的授权网络中添加了我的 IP 地址,
以及我的应用程序的 IP 地址。

我用过 http://www.hcidata.info/host2ip.cgi找出我的网络应用程序的 IP 地址。

谁能有同样的经历?

最佳答案

您的问题可能与 this question 中的问题类似:

您的问题可能是 Cloud SQL 不允许您的 Dyno 的 IP 地址。
因为 Heroku dyno 网格本质上是动态的,所以随着时间的推移,给定 dyno 分配的 IP 地址既是动态的,又是不可预测的。

正如另一个问题中提到的,您可以使用代理 Heroku 附加组件来为您提供静态 IP。

一种解决方法是将 Cloud SQL 实例中的 0.0.0.0/0(所有可能的 IP 地址)列入白名单。
如果您这样做,我强烈建议您的数据库连接需要 SSL。

关于heroku - 谷歌云 SQL + Heroku,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22373279/

相关文章:

heroku - 如何删除 Heroku Redis?

ubuntu - heroku-toolbelt 3.23.3 在 Ubuntu 上损坏

python - 无法针对谷歌云sql运行manage.py

google-cloud-sql - 适用于 Windows 的 Google Cloud SQL 代理

javascript - 当 web 端口 80 已被使用时,如何监听 heroku 上的任何端口?

node.js - 从 Heroku 上的 NodeBeginner 书中的 server.js 示例运行

postgresql - 现在遗留的 Heroku 共享数据库允许多少个并发连接(并且是否有任何缓存)?

mysql - 如何从 Google Compute Engine 实例池连接到同一项目中的 Cloud SQL DB?

database - 直接从 Hadoop/HDFS(本地/本地集群)将数据加载到 Redshift 和 Bigquery

google-apps-script - 从Apps脚本访问Google Cloud SQL